문제 링크: https://www.acmicpc.net/problem/10866
백준 알고리즘 기초 1/2 200에서 8번째 - 10866번 덱을 풀어보았다.
풀이: 덱을 구현한다.
C++
Python
import sys
stacks=[]
def push_back(a):
stacks.append(a)
def push_front(a):
stacks.insert(0,a)
def pop_front():
if len(stacks)==0: print(-1)
else:
print(stacks[0])
del stacks[0]
def pop_back():
if len(stacks)==0: print(-1)
else:
print(stacks[-1])
del stacks[-1]
def size():
print(len(stacks))
def empty():
if len(stacks)==0: print(1)
else: print(0)
def back():
if len(stacks)==0: print(-1)
else: print(stacks[-1])
def front():
if len(stacks)==0: print(-1)
else: print(stacks[0])
n=int(input())
for i in range(n):
inp=sys.stdin.readline().strip()
if inp=="pop_front": pop_front()
elif inp=="pop_back": pop_back()
elif inp=="size": size()
elif inp=="empty": empty()
elif inp=="back": back()
elif inp=="front": front()
else:
p,q=inp.split()
if p=="push_back": push_back(q)
elif p=="push_front": push_front(q)
Java
'코테용 문제풀이 > 백준' 카테고리의 다른 글
쇠막대기 풀이 (0) | 2023.01.10 |
---|---|
단어 뒤집기 2 풀이 (0) | 2023.01.10 |
요세푸스 문제 풀이 (0) | 2023.01.10 |
큐 풀이 (0) | 2023.01.10 |
에디터 풀이 (0) | 2023.01.10 |