n个小孩围成一圈,从第一个小孩开始从1到m报数,报到m的小孩出列,下一个小孩继续从1开始报数(出列的小孩不参与报数)。问小孩的出列顺序。
import java.util.*;
public class Main{
public static void main(String[] args)
{
Scanner scanner = new Scanner(System.in);
int n = scanner.nextInt();
int m = scanner.nextInt();
int[] a = new int[n+1];
int[] t = new int[n+1];
for(int i=1;i<=n;i++)
a[i] = 0;
int cnt = 0,k = 0,i = 0,j = 1;
while(cnt!=n)
{
i++;
if(i>n) i = 1;
if(a[i]==0)
{
k++;
if(k==m)
{
a[i] = 1;
cnt++;
t[i] = j++;
k = 0;
}
}
}
for(i=1;i<n;i++)
System.out.printf("%d,",t[i]);
System.out.printf("%d",t[n]);
}
}