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

 

10845번: 큐

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

www.acmicpc.net

  • push X: 정수 X를 큐에 넣는 연산이다.

  • pop: 큐에서 가장 앞에 있는 정수를 빼고, 그 수를 출력한다. 만약 큐에 들어있는 정수가 없는 경우에는 -1을 출력한다.

  • size: 큐에 들어있는 정수의 개수를 출력한다.

  • empty: 큐가 비어있으면 1, 아니면 0을 출력한다.

  • front: 큐의 가장 앞에 있는 정수를 출력한다. 만약 큐에 들어있는 정수가 없는 경우에는 -1을 출력한다.

  • back: 큐의 가장 뒤에 있는 정수를 출력한다. 만약 큐에 들어있는 정수가 없는 경우에는 -1을 출력한다.

간단하게 큐를 구현하는 코드입니다.

 

 

우선 push 3 그리고 push 4를 했을때의 큐의 모습입니다.

 

 

큐의 맨 앞부분이 front이고, 맨 뒷부분이 back입니다. 그리고 현재 size 는 2가됩니다.

 

 

pop을 하게되면 맨앞에 front에 있는 data가 빠져나가게 됩니다. 

 

이를 c++코드로 구현하는 것이 이번 10845번 큐 문제입니다.

 

 

'Programming > Baekjoon' 카테고리의 다른 글

BOJ ) 10866번 덱  (0) 2019.06.25
BOJ ) 1158번 조세퍼스문제  (0) 2019.05.31
BOJ ) 1406 에디터  (0) 2019.05.25
BOJ ) 9012번 괄호  (0) 2019.05.23
BOJ ) 10799번 쇠막대기  (0) 2019.05.23

+ Recent posts