您的位置:首页 > 其它

生命游戏

2015-12-06 21:15 232 查看
100人围成一圈,按顺序排号。从第一个人开始报数,数到3的人退出圆圈,余下的人连接起来,最后留下的是几号?

#include <iostream>
#include <fstream>
#include <queue>
#include <algorithm>
using namespace std;

int main()
{
int num[101];
int baoshu = 1;
int tuichu = 0;
int shengxia;
for(int i=1; i<=100; i++)
num[i] = 1;

i = 1;
while(1)
{
if(i == 101)
i = 1;
if(baoshu == 3 && num[i]!=0)
{
num[i] = 0;
i++;
tuichu++;
baoshu = 1;
if(tuichu == 99)
break;
}
else if(num[i] !=0)
{
shengxia = i;
baoshu++;
i++;
}
else
{
i++;
}
}

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