/*
* 500个小孩围一圈,数到3的退出,问剩下最后的小孩原来是多少号?
* author@
* */
public class YueSeFuHuan
{
public static void main(String[] args)
{
Scanner sca = new Scanner(System.in);
System.out.println("输入该游戏的参与人数:");
int n = sca.nextInt();
System.out.println("输入数到退出的数字:");
int m = sca.nextInt();
sca.close();
int len = n;
int[] a = new int[n];
for (int i = 0; i < n; i++)
{
a[i] = i + 1;
}
int i = 0;
int j = 1;
while (len >= m)
{
if (a[i % n] > 0)
{ // 这里判断是否被圈出去
if (j % m == 0)
{ // 这里判断是否报的数相同,是则退出该位置,且下一位重新报数
// System.out.print(a[i%n]+",");
a[i % n] = -1;
i++;
j = 1;
len--;
} else
{ // 不相同则继续
i++;
j++;
}
} else
{ // 表示该位置已被圈出,跳向下一位
i++;
}
}
for (int k = 0; k < n; k++)
{
if (a[k] > 0)
System.out.print(a[k] + ",");
}
}
}