Notice
Recent Posts
Recent Comments
Link
«   2026/06   »
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
Archives
Today
Total
관리 메뉴

dh-winternagi 님의 블로그

(28279) 덱 2 본문

백준 (C++)/Solve

(28279) 덱 2

dh-winternagi 2026. 4. 15. 09:48

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

단계별로 풀어보기

16단계(스택, 큐, 덱 1) 9번째

 

 

 

#include <iostream>
#include <queue>
using namespace std;

int main() 
{
  ios::sync_with_stdio(false);
  cin.tie(NULL);
  cout.tie(NULL);
  
  deque<int> dq;
  int n;
  
  cin >> n;
  
  while(n--){
    int q;
    
    cin >> q;
    
    if(q==1){
      int x;
      
      cin >> x;
      
      dq.push_front(x);
    }else if(q==2){
      int x;
      
      cin >> x;
      
      dq.push_back(x);
    }else if(q==3){
      if(!dq.empty()){
        cout << dq.front() << "\n";
        dq.pop_front();
      }else{
        cout << "-1\n";
      }
    }else if(q==4){
      if(!dq.empty()){
        cout << dq.back() << "\n";
        dq.pop_back();
      }else{
        cout << "-1\n";
      }
    }else if(q==5){
      cout << dq.size() << "\n";
    }else if(q==6){
      cout << dq.empty() << "\n";
    }else if(q==7){
      if(!dq.empty()){
        cout << dq.front() << "\n";
      }else{
        cout << "-1\n";
      }
    }else if(q==8){
      if(!dq.empty()){
        cout << dq.back() << "\n";
      }else{
        cout << "-1\n";
      }
    }
  }
  
  return 0;
}

'백준 (C++) > Solve' 카테고리의 다른 글

(24511) queuestack  (0) 2026.04.16
(2346) 풍선 터트리기  (0) 2026.04.16
(11866) 요세푸스 문제 0  (0) 2026.04.15
(2164) 카드2  (0) 2026.04.15
(18258) 큐 2  (0) 2026.04.15