본문 바로가기

백준

[백준]10845번:큐(파이썬)

https://www.acmicpc.net/problem/10845

 

10845번: 큐

첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 10,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지

www.acmicpc.net

num = int(input())
que = []
result=[]
for i in range(num):
  word = list((input().split()))
  if word[0] == "push":
    que.append(int(word[1]))
  elif word[0] == "pop":
    if que != []:
      a = que.pop(0)
      result.append(a)
    else:
      result.append(-1)
  elif word[0] == "size":
    result.append(len(que))
  elif word[0] == "empty":
    if que == []:
      result.append(1)
    else:
      result.append(0)
  elif word[0] == "front":
    if que != []:
      result.append(que[0])
    else:
      result.append(-1)
  elif word[0] == "back":
    if que!= []:
      result.append(que[-1])
    else:
      result.append(-1)
  #print(que)
  #print(result)

for i in result:
  print(i)

성공~

스택 문제만 풀다가 처음으로 큐 문제 풀어봤다.

스택-> 후입선출 방식

큐-> 선입선출 방식