约瑟夫环问题
#include <stdio.h>
#define NUM 200
#define N 3
int main()
{
int a[NUM+1] = {0};
int i = 1;
int num = 0;
int count = 0;
int quit = 1;
while(quit)
{
int flag = 0;
for (i=1; i<=NUM; i++)
{
if (a[i] == 0)
{
num = i;
flag++;
count++;
}
if (count%N == 0)
{
a[i] = 1;
}
if (i==NUM && flag==1)
{
quit = 0;
}
}
}
printf("the last one is num %d\n",num);
}

浙公网安备 33010602011771号