-
스택 #백준 10828알고리즘 2021. 3. 15. 20:34
10828번: 스택
첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 10,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지
www.acmicpc.net
[ 문제 해결 방법 ]
해당 문제는 특별한 어려움 없이 조건대로만 코드를 작성해주면 된다. 대신 시간초과가 나기 쉽기 때문에 입력받을때 input() 대신 sys.stdin.readline()을 사용해주었다.
[ 소스코드 ]
import sys n = int(input()) arr = [] for i in range(n) : v = sys.stdin.readline().rstrip().split() if v[0] == "push" : arr.append(v[1]) elif v[0] == "pop" : if len(arr) == 0 : print(-1) else : print(arr[-1]) del arr[-1] elif v[0] == "size" : print(len(arr)) elif v[0] == "empty" : if len(arr) == 0 : print(1) else : print(0) elif v[0] == "top" : if len(arr) == 0 : print(-1) else : print(arr[-1])
'알고리즘' 카테고리의 다른 글
스택 #백준 4949 (0) 2021.03.18 스택 #백준 9012 (0) 2021.03.18 스택 #백준 10773 (0) 2021.03.15 그리디 알고리즘(탐욕 알고리즘) #백준 1541 (0) 2021.03.15 그리디 알고리즘(탐욕 알고리즘) #백준 11047 (0) 2021.03.11