n 为环的大小 ,m 为每隔m,kill一个人
View Code
#include<stdio.h>
#include<string.h>
int a[109];
int main()
{
int i,j,n,count,m;
while(scanf("%d %d",&n,&m)!=EOF)
{
memset(a,0,sizeof(a));
int add=0;
i=0,count=1;
while(add<n-1)
{
while(a[i]!=0)
{
i++;i=i%n;
}
if(count%m==0)
{
a[i]=1;
add++;
count=0;
}
count++;
i++;i=i%n;
}
for(i=0;i<n;i++)
{
if(a[i]==0)
{
printf("%d\n",i+1);
break;
}
}
}
}