您的位置:首页 > 其它

约瑟夫自杀环

2013-10-17 00:00 363 查看
有一群人围成一圈,然后报数,包到指定数字就自杀。一直循环到最后一个活人。

简单思考了一下,用c写的:

#include<stdio.h>
#define max 10//定义有多少个人,应为是数组下标,所以实际是多一个人的。
void main(){
int a[max],int n=0;
for(int j=0;j<13;j++){ //max如果太大等修改13
for(int i=0;i<=max;i++)
{	if(a[i]==0)
continue;
a[i]=1;
n++;
if(n==3)//与什么数相等就是报的数,此处报数3
{a[i]=0;n=0;}
}
for(int s=0;s<=max;s++)
if(a[s]!=0)
printf("%dlive ",s+1);//输出可以存活的位置
printf("\n");
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  约瑟夫环