终于发现这个题目以前叫做<幸运的基督徒>,是一个数学家出的题
标准的好象是这样的
struct node
{
int no_out; //是否被仍入海中
int nextp; //下一个元素
}
程序代码
#include
struct node
{
int no_out;
int nextp;
}link[31];
main()
{
int i,j,k;
printf("圈中有(+:非基督徒, @:基督徒):\n");
for(i=1;i<=30;i++)
{
link.nextp=i+1;
link.no_out=1;
}
link[30].nextp=1;
j=30;
for(i=0;i<15;i++)
{
for(k=0;;)
if(k<9)
{
j=link[j].nextp;
k+=link[j].no_out;
}
else break;
link[j].no_out=0;
}
for(i=1;i<=30;i++)
printf("%c",link.no_out?'@':'+'); //@表示基督徒,+表示非基督徒.
printf("\n");
}
|