题目描述
n个人想玩残酷的死亡游戏,游戏规则如下:
n个人进行编号,分别从1到n,排成一个圈,顺时针从1开始数到m,数到m的人被杀,剩下的人继续游戏,活到最后的一个人是胜利者。请输出最后一个人的编号。
输入
输入n和m值。1<n,m<150。
输出
输出胜利者的编号。
样例输入
5 3
样例输出
4
#include"stdio.h"
int main()
{
int a[150];
int n,m,i,j,k,count;
while(~scanf("%d%d",&n,&m))
{
for(i=1; i<=n; i++)
a[i]=1;
k=0;
count=n;
for(i=1; count>1; i++)
{
if(a[i]==1)
k++;
if(k==m)
{
a[i]=0;
k=0;
count--;
}
if(i+1>n)
i=0;
}
for(i=1; i<=n; i++)
if(a[i]==1)
break;
printf("%d\n",i);
}
}