백준 1874 - 스택 수열 (파이썬)

Updated:

Answer

import sys

n = sys.stdin.readline()
p = map(lambda x: int(x.rstrip()), sys.stdin.readlines())
stack, result, cnt = [], [], 1

for i in p:
    while cnt <= i:
        stack.append(cnt)
        result.append('+')
        cnt += 1
    if stack.pop() != i:
        result = ['NO']
        break
    else:
        result.append('-')

print('\n'.join(result))

Categories:

Updated: