#include<stdio.h>
void main()
{
int a[500],*p,n,i,m=0,k=0;
printf("请输人数:");
scanf("%d",&n);
p=a;
for(i=0;i<=n;i++)
*(p+i)=i+1;
i=0;
while(m<n-1)//出局的人数小于n-1
{
if(*(p+i)!=0)k++;
if(k==3)
{
*(p+i)=0;
k=0;
m++;
}
i++;
if(i==n)i=0;
}
while(*p==0)p++;
printf("最后出局的为%3d",*p);
}
约瑟夫环
最新推荐文章于 2024-04-16 12:11:58 发布