报数游戏
You cannot submit for this problem because the contest is ended. You can click "Open in Problem Set" to view this problem in normal mode.
题目描述
小 Z 的班级男生人数为 人,女生人数为 人,现全班同学围成一个圆圈,并按照顺时针方向为每名同学编号(从 到 )。现给出一个正整数 ,从编号为 的同学开始顺时针方向报数,报到 的同学退出圆圈,下一名同学继续从 报数,再次报到 的同学退出圆圈。如此循环,直到剩余人数为 时游戏结束。
请你计算出游戏开始时 名男生分别应该排在什么位置,才能保证每次离开的都是女生,游戏结束时剩余 人都是男生。并将游戏开始时每名男生的位置编号按照从小到大顺序输出。
例如:, 名同学按照如下顺序排列,可以使3轮报数过后最后剩余的 名同学都为男生(蓝色为男生位置,红色为女生位置)。
故 名男同学的编号分别为 。
输入格式
输入三个正整数 , 表示男生人数, 表示女生人数,报数为 的同学退出圆圈,三个正整数之间以一个空格隔开。
输出格式
将每名男生位置编号按照从小到大的顺序输出,编号之间以一个空格隔开。
样例 #1
样例输入 #1
5 3 3
样例输出 #1
2 4 5 7 8
提示
对于所有数据,有 。 大的不是 的倍数的数。
【数据范围】
对于 的数据,。
对于 的数据,$1\le t \le 30, 1 \le p \le 10^{12}, 2 \le q \le 10^6$。
对于 的数据,$1\le t \le 50, 1 \le p \le 10^{18}, 2 \le q \le 10^9$。
入门(A)组-2(CSP-J第二轮复习T1、T2)
- Status
- Done
- Problem
- 4
- Open Since
- 2025-5-10 17:00
- Deadline
- 2025-5-18 23:59
- Extension
- 24 hour(s)