[アルゴリズム/標準]1874:スタック数列(python)
スタックの特性を理解してこそ解くことができます.
from sys import stdin
n = int(stdin.readline().strip())
a = list(int(stdin.readline().strip()) for _ in range(n))
stack, ans, cnt, flag = [], [], 1, False
for i in a:
while cnt <= i:
stack.append(cnt)
ans.append('+')
cnt += 1
if stack[-1] == i:
stack.pop()
ans.append('-')
else:
flag = True
if flag:
print('NO')
else:
print(*ans, sep='\n')
Reference
この問題について([アルゴリズム/標準]1874:スタック数列(python)), 我々は、より多くの情報をここで見つけました https://velog.io/@y7y1h13/알고리즘백준-1874-스택-수열pythonテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol