프로그래밍 공부/백준 (C++)

[C++/백준 1158번] 요세푸스 문제

Rocketbabydolls 2024. 10. 12. 16:51

 

#include <iostream>
#include <queue>
using namespace std;

int main()
{

	queue<int> Q;

	int N, K;

	cin >> N >> K;

	for (int i = 1; i <= N; i++)
	{
		Q.push(i);
	}

	cout << "<";
	while (!Q.empty())
	{
		for (int i = 1; i < K; i++)
		{
			int tmp = Q.front();
			Q.pop();
			Q.push(tmp);
		}
		int Knum = Q.front();
		Q.pop();
		
		if (Q.empty())
		{
			cout << Knum << ">";
			return 0;
		}
		else
			cout << Knum << ", ";
	}




	return 0;
}