[문제]
https://www.acmicpc.net/problem/2164
[풀이]
큐 활용 문제
단순히 q.size()가 1이 될때까지 while 문을 돌리고, q.pop()을 하고, q.push()를 활용하면 된다.
[코드]
#include <bits/stdc++.h>
using namespace std;
int main() {
ios::sync_with_stdio(0);
cin.tie(0);
queue<int> q;
int n;
cin >> n;
for(int i=1; i<=n; i++){
q.push(i);
}
while(q.size() > 1) {
q.pop();
if(!q.empty()) {
q.push(q.front());
q.pop();
}
}
cout << q.front();
}
'✏️ Algorithm > 알고리즘 풀이' 카테고리의 다른 글
5430번 AC - C++ (0) | 2022.07.26 |
---|---|
1021번 회전하는 큐 - C++ (0) | 2022.07.26 |
18258번 큐 2 - C++ (0) | 2022.07.25 |
6549번 히스토그램에서 가장 큰 직사각형 - C++ (0) | 2022.07.25 |
3015번 오아시스 재결합 - C++ (0) | 2022.07.24 |