코딩고치

[파이썬][백준] 스택 수열 본문

파이썬/백준 문제

[파이썬][백준] 스택 수열

코딩고치 2020. 5. 21. 15:50

1. 문제

주소: https://www.acmicpc.net/problem/1874

 

1874번: 스택 수열

1부터 n까지에 수에 대해 차례로 [push, push, push, push, pop, pop, push, push, pop, push, push, pop, pop, pop, pop, pop] 연산을 수행하면 수열 [4, 3, 6, 8, 7, 5, 2, 1]을 얻을 수 있다.

www.acmicpc.net

문제 유형: 스택, 그리디

2. 소스 코드

n = int(input())
stack_list = []
result = []
input_num = 1
for i in range(n):
    data = int(input())
    while input_num <= data:
        stack_list.append(input_num)
        result.append('+')
        input_num += 1
    if stack_list[-1] == data:
        stack_list.pop()
        result.append('-')
    else:
        print('NO')
        exit(0)

for data in result:
    print(data)

'파이썬 > 백준 문제' 카테고리의 다른 글

[파이썬][백준] 10930번: SHA-256  (0) 2020.05.22
[파이썬][백준] 5397번: 키로거  (0) 2020.05.22
[파이썬][백준] 프린터 큐  (0) 2020.05.21
[파이썬][백준] 블랙잭  (0) 2020.05.21
[파이썬][백준] 음계  (0) 2020.05.21
Comments