
* 겪고 있는 문제 상황을 최대한 자세하게 작성해주세요.
* 문제 해결을 위해 어떤 시도를 해보았는지 구체적으로 함께 알려주세요.
시간 초과 오류가 나는데 어떻게 해결해야 할지 모르겠습니다.
import sys
class Node:
def __init__(self, val, next):
self.val = val
self.next = next
class Queue:
def __init__(self):
self.fro = None
def push(self, val):
if not self.fro:
self.fro = Node(val, None)
return
node = self.fro
while(node.next):
node = node.next
node.next = Node(val, node)
def pop(self):
if not self.fro:
return -1
node = self.fro
self.fro = node.next
return node.val
def size(self):
count = 0
node = self.fro
while(node):
node = node.next
count += 1
return count
def empty(self):
return 1 if not self.fro else 0
def front(self):
return self.fro.val if self.fro else -1
def back(self):
if not self.fro:
return -1
node = self.fro
while(node.next):
node = node.next
return node.val
T = int(sys.stdin.readline().strip())
q = Queue()
for i in range(T):
s = sys.stdin.readline().strip().split()
if s[0] == 'push':
q.push(int(s[1]))
elif s[0] == 'pop':
print(q.pop())
elif s[0] == 'size':
print(q.size())
elif s[0] == 'empty':
print(q.empty())
elif s[0] == 'front':
print(q.front())
elif s[0] == 'back':
print(q.back())
