-
1158 요세푸스 문제코딩 테스트/백준 2022. 2. 14. 17:39
https://www.acmicpc.net/problem/1158
1158번: 요세푸스 문제
첫째 줄에 N과 K가 빈 칸을 사이에 두고 순서대로 주어진다. (1 ≤ K ≤ N ≤ 5,000)
www.acmicpc.net
#include <queue> #include <iostream> using namespace std; int main() { ios::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); int N, K; cin >> N >> K; queue<int> josephus; for (int i = 1; i <= N; i++) josephus.push(i); cout << "<"; while (josephus.size() - 1) { for (int i = 0; i < K - 1; i++) { josephus.push(josephus.front()); josephus.pop(); } cout << josephus.front() << ", "; josephus.pop(); } cout << josephus.front() << ">"; return 0; } // 블로그 참고, https://dayoff201.tistory.com/55