카테고리 없음
백준 10866번 : 덱 (Python, 파이썬) - 자료구조 덱(Deque)
에르미타쥬
2019. 1. 14. 23:17
https://www.acmicpc.net/problem/10866
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 55 | class deque: def __init__(self): self.items = [] def push_front(self,x): self.items.insert(0,x) def pop_front(self): if len(self.items) == 0: return -1 else: return self.items.pop(0) def push_back(self,x): self.items.append(x) def pop_back(self): if len(self.items) == 0: return -1 else: return self.items.pop() def size(self): return len(self.items) def empty(self): if len(self.items) == 0: return 1 else: return 0 def front(self): if len(self.items) == 0: return -1 else: return self.items[0] def back(self): if len(self.items) == 0: return -1 else: return self.items[-1] D = deque() N = int(input()) for _ in range(N): cmd = list(input().split(' ')) if cmd[0] == 'push_back': D.push_back(int(cmd[1])) elif cmd[0] == 'push_front': D.push_front(int(cmd[1])) elif cmd[0] == 'pop_front': print(D.pop_front()) elif cmd[0] == 'pop_back': print(D.pop_back()) elif cmd[0] == 'size': print(D.size()) elif cmd[0] == 'empty': print(D.empty()) elif cmd[0] == 'front': print(D.front()) elif cmd[0] == 'back': print(D.back()) | cs |