๋ฐ์ํ
https://www.acmicpc.net/problem/10828
๐ ๋ฌธ์ ๋ถ์
์คํ์์ push, pop, size, empty, top์ ๊ตฌํํ๋ ๋ฌธ์
๐ ์๊ณ ๋ฆฌ์ฆ ์ค๊ณ
pushํจ์๋ append๋ฅผ ์ฌ์ฉํ์ฌ ๋ฐ์ดํฐ ์ถ๊ฐ
stack์ ๊ธธ์ด๋ก size ์ถ๋ ฅ
stack[-1]๋ก ์คํ์ ๊ฐ์ฅ ์์ ์๋ ์ ์๋ฅผ ์ถ๋ ฅ
๐ ์ฝ๋
import sys
stack = []
x = int(sys.stdin.readline())
for i in range(x):
y = sys.stdin.readline().split()
if y[0] == "push":
stack.append(y[1])
elif y[0] == "pop":
if len(stack) == 0:
print(-1)
else:
print(stack.pop())
elif y[0] =="size":
print(len(stack))
elif y[0] == "empty":
if len(stack) != 0:
print(0)
else:
print(1)
elif y[0] == "top":
if len(stack) != 0:
print(stack[-1])
else:
print(-1)
๐ ํ๋ฆฐ ์ด์
๋ฐํ์ ์๋ฌ
๐ ํ๋ฆฐ ๋ถ๋ถ ์์ or ๋ค๋ฅธ ํ์ด
๋ฐํ์ ์๋ฌ๋ก ์ธํด, input()์ sys.stdin.readline()๋ก ๋ฐ๊ฟ ์ฃผ์๊ณ , ์ฌ์ ํ ๋ฐํ์ ์๋ฌ๊ฐ ๋์
top๋ถ๋ถ์ ๊ตฌํํ ๋, stack.top()๋์ stack[-1]์ผ๋ก ํ์๋๋ ๋ฐํ์ ์๋ฌ๊ฐ ํด๊ฒฐ๋์๋ค.
๐ ๋๋์ or ๊ธฐ์ตํ ์ ๋ณด
์๊ฐ๋จ์ถ์ ์ํด input()๋์ sys.stdin.readline()์ ์ฌ์ฉ
๋ฐ์ํ
'๋ฐฑ์ค | Baekjoon' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[๋ฐฑ์ค][11724] ์ฐ๊ฒฐ ์์์ ๊ฐ์ | ํ์ด์ฌ (0) | 2024.05.16 |
---|---|
[๋ฐฑ์ค][1260] DFS์ BFS | ํ์ด์ฌ (0) | 2024.05.13 |
[๋ฐฑ์ค][1654] ๋์ ์๋ฅด๊ธฐ | ํ์ด์ฌ (0) | 2024.05.11 |
[๋ฐฑ์ค][2805] ๋๋ฌด์๋ฅด๊ธฐ | ํ์ด์ฌ (0) | 2024.05.09 |
[๋ฐฑ์ค][1158] ์์ธํธ์ค ๋ฌธ์ | ํ์ด์ฌ (0) | 2024.05.08 |