Search
Duplicate
📗

지우개

주차
문제번호
21756
언어
C++
티어
브론즈
유형
수학
구현
시뮬레이션
nj_Blog
nj_상태
이해도
100%
풀이
사람
이해도 2
13 more properties

문제접근

큐를 이용하여 최대 범위를 지속적으로 업데이트하면서 관리

놓쳤던 부분

벡터 2개가 훨씬 간단할듯

코드

2020 KB

0 ms

#include <iostream> #include <queue> using namespace std; int main(void) { queue<int> q; int n; int cnt = 0; int limit; ios_base::sync_with_stdio(false); cin.tie(0); cout.tie(0); cin >> n; for (int i = 1; i <= n; i++) q.push(i); limit = q.size(); while(q.size() > 1) { cnt++; if (cnt > limit) { cnt = 1; limit = q.size(); } if (cnt % 2 != 1) q.push(q.front()); q.pop(); } cout << q.front(); return (0); }
C++
복사