★实验任务
假设 N 个竞赛者排成一个环形。给定一个正整数 M>=N,从指定的第 K 个人开始,沿
环计数,每遇到第 M 个人就让其出列,且 M 减 1,计数继续进行下去。这个过程一直进行
到所有的人都出列为止。
★数据输入
输入三个正整数 N, M, K
N<=3000, N<=M<=1000000000, K<=N
★数据输出
输出出列序列
输入示例 输出示例
5 8 2 4
假设 N 个竞赛者排成一个环形。给定一个正整数 M>=N,从指定的第 K 个人开始,沿
环计数,每遇到第 M 个人就让其出列,且 M 减 1,计数继续进行下去。这个过程一直进行
到所有的人都出列为止。
★数据输入
输入三个正整数 N, M, K
N<=3000, N<=M<=1000000000, K<=N
★数据输出
输出出列序列
输入示例 输出示例
5 8 2 4
2
1
3
5
#include<stdio.h>
int main(){
int n,m,k;
int a[3000];
scanf("%d%d%d",&n,&m,&k);
for(int t=0;t<n;t++){
a[t]=t+1;}
for(int i=1;n;i++,n--,m--){
k=(k+m-1)%n;
printf("%d\n",a[k-1]);
for(int j=0;n-k-j;j++)
a[k+j-1]=a[k+j];
}
return 0;
}