백준 1021번

2022. 2. 7. 00:00·Study/Algorithm

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

 

1021번: 회전하는 큐

첫째 줄에 큐의 크기 N과 뽑아내려고 하는 수의 개수 M이 주어진다. N은 50보다 작거나 같은 자연수이고, M은 N보다 작거나 같은 자연수이다. 둘째 줄에는 지민이가 뽑아내려고 하는 수의 위치가

www.acmicpc.net

#include <iostream>
#include <deque>

using namespace std;

int main(int argc, char** argv) {

deque<int> Deque;
int left, right;
int cnt = 0;

int N, M;
cin >> N >> M;

for (int i = 1; i <= N; i++) {
Deque.push_back(i);
}

for(int i =0;i < M; i++) {
int num;
cin >> num;

for (int i = 0; i < Deque.size(); i++) {

if (Deque[i] == num) {
left = i;
right = Deque.size() - i;
break;

}
}

if (left <= right) {
while (true) {
if (Deque.front() == num)
break;

Deque.push_back(Deque.front());
Deque.pop_front();
cnt++;

}
Deque.pop_front();
}else {
cnt++;
while (true) {
if (Deque.back() == num)
break;

Deque.push_front(Deque.back());
Deque.pop_back();
cnt++;

}
Deque.pop_back();
}

}

cout << cnt;

return 0;
}

설계

'Study > Algorithm' 카테고리의 다른 글

백준 16953번  (0) 2022.02.08
백준 14916번  (0) 2022.02.08
백준 1068번  (0) 2022.02.06
백준 14501번  (0) 2022.01.30
백준 1874번  (0) 2022.01.30
'Study/Algorithm' 카테고리의 다른 글
  • 백준 16953번
  • 백준 14916번
  • 백준 1068번
  • 백준 14501번
_WooHyun_
_WooHyun_
  • _WooHyun_
    Nerd
    _WooHyun_
  • 전체
    오늘
    어제
    • 분류 전체보기 (79)
      • Study (60)
        • Algorithm (24)
        • Unreal Engine (19)
        • C++ (1)
        • Maya (1)
        • GoLang (3)
        • Mysql (3)
        • Linux (7)
        • Server (2)
      • Projects (0)
        • Unreal Engine (0)
        • Server (0)
      • 개발일지 (8)
        • Unreal Engine (7)
        • Art (1)
        • Server (0)
      • 미래 (5)
      • 개발아이디어 (0)
      • 잡지식 (2)
  • 블로그 메뉴

    • 홈
    • 방명록
    • 글쓰기
    • 블로그설정
  • 링크

    • GitHub
  • 공지사항

  • 인기 글

  • 태그

  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
_WooHyun_
백준 1021번
상단으로

티스토리툴바