문제: 2164번: 카드2
basic-algo-lecture/workbook/0x06.md at master · encrypted-def/basic-algo-lecture
#include <map>
#include <set>
#include <cmath>
#include <queue>
#include <stack>
#include <vector>
#include <string>
#include <iostream>
#include <algorithm>
#include <iomanip> // setprecision을 사용하기 위한 헤더
#include <climits>
#include <list>
using namespace std;
int main() {
ios_base::sync_with_stdio(false);
cin.tie(0);
cout.tie(0);
int n;
cin >> n;
queue<int> q;
for (int i = 1; i <= n; i++)
q.push(i);
while (q.size() > 1) {
q.pop();
int tmp = q.front();
q.pop();
q.push(tmp);
}
cout << q.front() << "\n";
return 0;
}
그냥 기본적인 큐 문제이다. 쉬워서 뭐라 말할게 없다..
참고자료:
BaaaaaaaarkingDog | [실전 알고리즘] 0x06강 - 큐