Algorithms
[๋ฐฑ์ค] 10828๋ฒ: ์คํ - python
thals0
2023. 1. 1. 19:04
728x90
https://www.acmicpc.net/problem/10828
10828๋ฒ: ์คํ
์ฒซ์งธ ์ค์ ์ฃผ์ด์ง๋ ๋ช ๋ น์ ์ N (1 ≤ N ≤ 10,000)์ด ์ฃผ์ด์ง๋ค. ๋์งธ ์ค๋ถํฐ N๊ฐ์ ์ค์๋ ๋ช ๋ น์ด ํ๋์ฉ ์ฃผ์ด์ง๋ค. ์ฃผ์ด์ง๋ ์ ์๋ 1๋ณด๋ค ํฌ๊ฑฐ๋ ๊ฐ๊ณ , 100,000๋ณด๋ค ์๊ฑฐ๋ ๊ฐ๋ค. ๋ฌธ์ ์ ๋์์์ง
www.acmicpc.net
stack class๋ฅผ ์ ์ํ์ฌ stack์ ๊ธฐ๋ฅ/๋ช ๋ น์ ๊ตฌํํจ
sys๋ฅผ ์ฐ์ง ์์ผ๋ ์๊ฐ์ด๊ณผ๊ฐ ๋ฌ์ import sys๋ก ์๊ฐ์ด๊ณผ ํด๊ฒฐ
์ ๋ต์ฝ๋:
import sys
input = sys.stdin.readline
class Stack:
def __init__(self):
self.data=[]
def empty(self):
if len(self.data) == 0:
return 1
else:
return 0
def size(self):
return len(self.data)
def push(self, X):
self.data.append(X)
def pop(self):
if self.size() == 0:
return -1
else:
return self.data.pop()
def top(self):
if self.size() == 0:
return -1
else:
return self.data[-1]
num = int(input())
stack = Stack()
for _ in range(num):
cmd = input().split()
op = cmd[0]
if op == 'push':
stack.push(cmd[1])
elif op == 'empty':
print(stack.empty())
elif op == 'pop':
print(stack.pop())
elif op == 'size':
print(stack.size())
elif op == 'top':
print(stack.top())
else:
print('err')
728x90