POJ 3629 Card Stacking
ソースコード
int main() { int n, k, p; scanf("%d%d%d", &n, &k, &p); int m = k / n; vector<int> res; queue<int> deck; rep(i, k) deck.push(i + 1); for (int i = 0; !deck.empty(); ++i %= n) { if (i == n - 1) res.pb(deck.front()); deck.pop(); rep(j, p) { deck.push(deck.front()); deck.pop(); } } sort(all(res)); rep(i, m) printf("%d\n", res[i]); }