队列

噢莫加纳加加加  •  12小时前


#include <bits/stdc++.h>
using namespace std;

int main() {
	int n, k, p; //n人,k牌,p段;
	cin >> n >> k >> p;
	queue<int> q;
	for (int i = 1; i <= k; i++) {
		q.push(i);
	}
	int a[k / n];
	int cnt = 0;
	for (int i = 1; i <= k; i++) {
		if (i % n == 0) {
			a[cnt] = q.front();
			cnt++;
		}
		q.pop();
		for (int j = 1; j <= p; j++) {
			q.push(q.front());
			q.pop();
		}
	}
	sort(a, a + (k / n));
	for (int i = 0; i < k / n; i++) {
		cout << a[i] << endl;
	}
	return 0;
}

评论:

请先登录,才能进行评论