문제 링크: https://www.acmicpc.net/problem/1874
백준 알고리즘 기초 1/2 200에서 4번째 - 1874번 스택 수열을 풀어보았다.
풀이: 1부터 n까지의 수열을 스택에 넣고 빼면서 문제에서 입력받은 수열을 만들면 된다.
C++
Python
n=int(input())
stack=[]
res=[] # 정답출력용
num=1
tf=True # 작업이 잘 수행되었는지 확인
for i in range(n):
inp=int(input())
while num<=inp: # 스택에 넣어줘야 하면
stack.append(num) # inp까지 넣음
res.append('+')
num+=1
if stack[-1]==inp:
stack.pop()
res.append('-')
else:
print("NO") # 빼줄 수 없으면
tf=False # 작업 수행 실패
break
if tf:
for i in res:
print(i)
Java
'코테용 문제풀이 > 백준' 카테고리의 다른 글
큐 풀이 (0) | 2023.01.10 |
---|---|
에디터 풀이 (0) | 2023.01.10 |
괄호 풀이 (0) | 2023.01.10 |
단어 뒤집기 풀이 (0) | 2023.01.10 |
스택 풀이 (0) | 2023.01.10 |