文章
16
粉丝
0
获赞
66
访问
3.5k
#include <iostream>
#include <list>
using namespace std;
bool st[110];//用来判断某个位置是否有被出局 false 没有出局 true 出局
int main()
{
int N;
cin>>N;
int totle = 0; //用来记录游戏进行到了多少轮
int k = 0; // 用来记录当前传到第几个人了
while(totle < N - 1)//要选出最后一个出局的,每轮出局一个所以只要循环n - 1轮剩下的那个就是
{
for(int i = 0; i < 2; i ++) //每次只传两次共三个人
{
//当前位置没有出局
k = (k + 1) % N;
while(st[k]) k = (k + 1) % N; //判断下一个要传给谁
}
//cout<<"k = "<<k<<endl;
st[k] = true;
k = (k + 1) % N;
while(st[k]) k = (k + 1) % N; //寻找出局后第一个...
登录后发布评论
暂无评论,来抢沙发