백준 - 1874 (Python) - 스택 수열
스택 수열
- 풀이 방법
8 4 3 6 8 7 5 2 1
위와 같이 입력을 받는다고 하자.
n이 8이고 수열 = [4, 3, 6, 8, 7, 5, 2, 1] 이 된다.
우선 스택에 push를 먼저 하면 1이 담긴다.
s = [1]
한번 더 push를 하면 2가 담긴다.
s = [1, 2]
이런식으로 push를 4번해주면
s = [1, 2, 3, 4]가 담긴다.
여기서 입력받은 수열과 같게 하려면 pop을 두번 해주면
[4, 3] 이렇게 담겨진다.
이런식으로 push와 pop을 해가며 pop을 이용해 입력받은 수열([4, 3, 6, 8, 7, 5, 2, 1])을 만드는 것이다.
n = int(input())
stack = []
result = []
count = 1
temp = True
for x in range(n):
num = int(input())
while count <= num:
stack.append(count)
result.append('+')
count += 1
if stack[-1] == num:
stack.pop()
result.append('-')
else:
temp = False
if temp == False:
print('NO')
else:
for x in result:
print(x)
Author And Source
이 문제에 관하여(백준 - 1874 (Python) - 스택 수열), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@junyp1/백준-1874-Python-스택-수열저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)