[algorithm] 백준 10866번 덱

2026. 1. 17. 20:46·algorithm/덱
반응형

 

스택,큐의 기본문제들과 같은 패턴으로

덱을 잘 이해했는 지에 대한 개념확인 문제다

#include <iostream>
#include <deque>
#include <string>
using namespace std;

int main() {
    ios::sync_with_stdio(0);
    cin.tie(0);

    int n,x;
    string s;
    cin >> n;
    deque<int> d;
    for(int tmp=0; tmp<n; tmp++)
        {
            cin >> s;
            if(s == "push_front")
            {
                cin >> x;
                d.push_front(x);
            }

            if(s == "push_back")
            {
                cin >> x;
                d.push_back(x);
            }

            if(s == "pop_front")
            {
                if(d.size() == 0) cout << -1 << "\n";
                else
                {
                    cout << d.front() << "\n";
                    d.pop_front();
                }
            }

            if(s == "pop_back")
            {
                if(d.size() == 0) cout << -1 << "\n";
                else
                {
                    cout << d.back() << "\n";
                    d.pop_back();
                }
            }

            if(s == "size")
            {
                cout << d.size() << "\n";
            }

            if(s == "empty")
            {
                if(d.empty()) cout << 1 << "\n";
                else cout << 0 << "\n";
            }

            if(s == "front")
            {
                if(d.size() == 0) cout << -1 << "\n";
                else cout << d.front() << "\n";
            }

            if(s == "back")
            {
                if(d.size() == 0) cout << -1 << "\n";
                else cout << d.back() << "\n";
            }
        }
    return 0;
}

 

적절한 위치에 적절한 STL deque의 함수를 사용해주면

쉽게 해결할 수 있다

 

마찬가지로 push_front / push_back 에서 X를 입력받으려면

입력받은 문자열이 push_front / push_back일 때

그 다음에 X를 입력받는 식으로 구현해주면 된다

반응형

'algorithm > 덱' 카테고리의 다른 글

[algorithm] 백준 1021번 회전하는 큐  (1) 2026.01.17
'algorithm/덱' 카테고리의 다른 글
  • [algorithm] 백준 1021번 회전하는 큐
20puddle
20puddle
20puddle 님의 블로그 입니다.
  • 20puddle
    20puddle 님의 블로그
    20puddle
  • 전체
    오늘
    어제
    • 분류 전체보기 (100)
      • Spring boot (5)
      • git & github (5)
      • algorithm (47)
        • theory (3)
        • 배열 (7)
        • 연결 리스트 (3)
        • 스택 (5)
        • 큐 (3)
        • 덱 (2)
        • 기초 코드 (19)
        • BFS (5)
      • AI (43)
        • Machine Learning (35)
        • Deep Learning (8)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    머신러닝
    인공지능
    AI
    github
    Aimers
    DL
    알고리즘
    Java
    백준
    주성분변환
    list
    딥러닝
    게시판
    연결리스트
    Spring Boot
    오프라인 학습
    ML
    홀드아웃 검증
    git
    그레디언트 클리핑
  • 최근 댓글

  • 최근 글

  • 반응형
  • hELLO· Designed By정상우.v4.10.3
20puddle
[algorithm] 백준 10866번 덱
상단으로

티스토리툴바