No Rules Rules

큐 (feat. 백준, 10845번) 본문

생활/코테

큐 (feat. 백준, 10845번)

개발하는 완두콩 2022. 9. 14. 14:46
728x90
반응형


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

 

10845번: 큐

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

www.acmicpc.net

 

반응형

 

// woohyeon.kim
// kim519620.tistory.com
#include <iostream>
#include <queue>
#include <string>
using namespace std;
int main(){
    ios::sync_with_stdio(false), cin.tie();
    register int N;
    queue<int> q;
    cin >> N;
    string tmp;
    for(register int n = 0, v; n < N; ++n){
        cin >> tmp;
        if(!tmp.compare("push"))
            cin >> v, q.push(v);
        else if(!tmp.compare("pop"))
            if(q.empty())
                cout << -1 << "\n";
            else
                cout << q.front() << "\n", q.pop();
        else if(!tmp.compare("size"))
            cout << q.size() << "\n";
        else if(!tmp.compare("empty"))
            q.empty() ? cout << 1 << "\n" : cout << 0 << "\n";
        else if(!tmp.compare("front"))
            if(q.empty())
                cout << -1 << "\n";
            else
                cout << q.front() << "\n";
        else if(!tmp.compare("back"))
            if(q.empty())
                cout << -1 << "\n";
            else
                cout << q.back() << "\n";
    }
    return 0;
}
// *&)*@*

 

 

  1. 문제의 요구사항대로 출력하는 문제입니다.

 

 

728x90
반응형
Comments