33,006
社区成员
发帖
与我相关
我的任务
分享
#include <stdio.h>
#include <stdlib.h>
int a[50],A,B,num;
int go(int kk,int nn){
if (a[A]!=0)kk--;
while(kk--){
do{
A=(A+1)%(nn+1);
}while(a[A]==0);
}
}
int back(int mm,int nn){
if (a[B]!=0)mm--;
while(mm--){
do{
B=B-1;
if(B==0)B=nn;
}while(a[B]==0);
}
num--;
if(a[A]!=a[B]){
printf("%3d",a[A]);num--;}
if(num==0)printf("%3d",a[B]);
else printf("%3d,",a[B]);
a[B]=0;
a[A]=0;
}
int main() {
int k,m,n,i,j,Count=0;
while(scanf("%d%d%d",&n,&k,&m)==3){
num=n;A=1;B=n;
for(i=1;i<=50;i++)a[i]=i;
while(num!=0){
go(k,n);
back(m,n);
}
}
return 0;
}