일상 코딩
[python] 백준 알고리즘 1874번 스택 수열 풀이 본문
728x90
https://www.acmicpc.net/problem/1874
N = int(input())
count = 1
stack = []
result = ""
for _ in range(N):
Answer = int(input())
while count <= Answer:
stack.append(count)
count += 1
result += "+\n"
if stack[-1] == Answer:
stack.pop()
result += "-\n"
else:
print("NO")
exit(0)
print(result, end=" ")
입력 예시1
8
4
3
6
8
7
5
2
1
출력 예시1
+
+
+
+
-
-
+
+
-
+
+
-
-
-
-
-
입력 예시2
5
1
2
5
3
4
출력 예시2
NO
정답 코드를 보고서 개선한 것은
result += "+\n"
위 코드 정도이다.
파이썬에서 list.append() 연산이 시간을 꽤 잡아먹는다기에
더하기 연산으로 바꿔 주었다.
문제 자체가 그렇게 연산을 많이 하는 것은 아니기에
영향은 미미하겠지만 나름 개선한다고는 해보았다.
728x90
'코딩테스트 > 백준 online Judge' 카테고리의 다른 글
[python] 백준 알고리즘 5397번 키로거, 문자열 풀이 (0) | 2021.11.07 |
---|---|
[python] 백준 알고리즘 1966번 프린터 큐, 튜플 사용없는 풀이 (0) | 2021.11.06 |
[python] 백준 알고리즘 17413번 단어 뒤집기 2, 구현 문자열 합치기 (0) | 2021.10.17 |
[python] 백준 16675번 두 개의 손, 모듈러 연산 풀이 (0) | 2021.10.16 |
[python] 백준 온라인 알고리즘 2484번 주사위 네개 풀이 (0) | 2021.10.14 |