1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
|
class Stack:
def __init__(self):
self.stack = []
# 정수 x를 스택에 넣는 연산이다.
def push(self, x):
self.stack.append(x)
# 스택에서 가장 위에 있는 정수를 빼고, 그 수를 출력한다. 만약 스택에 들어있는 정수가 없는 경우에는 -1을 출력한다.
def pop(self):
if len(self.stack) > 0 :
return self.stack.pop()
else :
return -1
# 스택에 들어있는 정수의 개수를 출력한다.
def size(self):
return len(self.stack)
# 스택이 비어있으면 1, 아니면 0을 출력한다.
def empty(self):
if len(self.stack) > 0 :
return 0
else :
return 1
# 스택의 가장 위에 있는 정수를 출력한다. 만약 스택에 들어있는 정수가 없는 경우에는 -1을 출력한다.
def top(self):
if len(self.stack) > 0 :
return self.stack[-1]
else :
return -1
def bk10828_stack():
import sys
s = Stack()
n = int(sys.stdin.readline())
for i in range(n):
order = sys.stdin.readline().split()
if order[0] == 'top':
print(s.top())
elif order[0] == 'pop':
print(s.pop())
elif order[0] == 'size':
print(s.size())
elif order[0] == 'empty':
print(s.empty())
elif order[0] == 'push' :
s.push(order[1])
bk10828_stack()
|
cs |
'개발공부 > 문제풀기' 카테고리의 다른 글
25314 코딩은 체육과목 입니다. (1) | 2024.11.01 |
---|---|
COCI '18 Contest 4 #1 Elder (2) | 2022.06.22 |
백준 4153 - 직각삼각형 (0) | 2022.03.21 |
백준 1920 - 수 찾기 (0) | 2022.03.21 |
백준 2525 - 오븐시계 (0) | 2022.03.20 |
댓글