개인공부용123 프로그래밍 블로그

[백준] 11866 & 1158 (조세퍼스문제 0, 1) 본문

알고리즘문제

[백준] 11866 & 1158 (조세퍼스문제 0, 1)

개인공부용123 2017. 5. 4. 15:11

환형큐를 이용해서 문제 M 번째에 있는 수를 찾으면 쉽게 풀리는 문제입니다.



#include 
#include 

using namespace std;

void Josepus(int N, int M) {
	queue q;
	for (int i = 1; i <= N; ++i) q.push(i);
	cout << "<";
	while (!q.empty()) {
		for (int i = 0; i < M - 1; ++i) {
			q.push(q.front());
			q.pop();
		}

		cout << q.front();
		q.pop();
		if (!q.empty()) cout << ", ";

	}
	cout << ">";

	return;
}

int main() {
	std::ios::sync_with_stdio(false);

	int N, M;

	cin >> N >> M;

	Josepus(N, M);

	return 0;
}

'알고리즘문제' 카테고리의 다른 글

[백준] 11051 이항계수문제  (0) 2017.05.19
[백준] 5430  (0) 2017.05.04
[백준] 1260  (0) 2017.05.04
[백준] 9012  (0) 2017.05.02
[백준] 1874(스택)  (0) 2017.05.02