10845_큐
링크
https://www.acmicpc.net/problem/10845
풀이
하나하나 사용해주면 됩니다. 코드 주석으로 설명하겠습니다.
코드
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 |
//10845_큐 #include <iostream> #include <string> #include <queue> using namespace std;
int main() { ios_base::sync_with_stdio(false); cin.tie(NULL);
queue<int> q; int n; int data; string str;
cin >> n;
for (int i = 0; i < n; ++i) { cin >> str;
if (str == "push") { //data push cin >> data; q.push(data); }
else if (str == "pop") { //empty check 후 비어 있으면 -1, if (q.empty()) cout << "-1\n"; //data가 있으면 front 출력 후, pop else { cout << q.front() << "\n"; q.pop(); } }
else if (str == "size") { //queue size 출력 cout << q.size() << "\n"; }
else if (str == "empty") { //queue의 empty 여부 출력 cout << q.empty() << "\n"; //empty면 1, data가 있으면 0 }
else if (str == "front") { //empty 체크 후 비어 있으면 -1, if (q.empty()) cout << "-1\n"; //data가 있으면 front 출력, pop X else cout << q.front() << "\n"; }
else if (str == "back") { //empty 체크 후 비어 있으면 -1, if (q.empty()) cout << "-1\n"; //data가 있으면 back 출력, pop X else cout << q.back() << "\n"; } }
return 0; } |
'PS > BOJ' 카테고리의 다른 글
[백준 BOJ][stack] 10799 쇠막대기 (0) | 2018.07.26 |
---|---|
[백준 BOJ][stack] 9012 괄호 (0) | 2018.07.26 |
[백준 BOJ][stack] 10828 스택 (0) | 2018.07.26 |
[백준 BOJ][sort] 11651 좌표 정렬하기 2 (0) | 2018.07.24 |
[백준 BOJ][sort] 11650 좌표 정렬하기 (0) | 2018.07.24 |