注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

倚楼听风雨

没有理想的人,永远也不能翱翔与蓝天白云之上~

 
 
 

日志

 
 

猴子选大王  

2007-12-16 15:17:34|  分类: 数据结构 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

#include<iostream.h>

int choose(int num, int del)
{
 int i;
 int a[100];
 for (i = 0;i < num;i++)
  a[i] = 1;     //猴子状态初始化,为1表示可能被选上,为0表明没希望了;

 int sum = 0,      //循环记数;
   countOne = num;   //累积记数初始化,大于1表明还有大王候选人;
 while (countOne > 1)
 {
  countOne = 0;
  for (i = 0;i < num;i++)
  {
   sum += a[i];
   if (sum == del)
    sum = a[i] = 0;  //淘汰倒霉猴子;
   countOne += a[i];
  }
 }

 for (i = 0;i < num;i++)
  if (a[i] != 0)
   return i;   //找到幸运猴子编号(从0开始的);
}

void main()
{
 int num, del;
 cout << "请输入猴子总数和淘汰数:";
 cin >> num >> del;
 cout << "第" << choose(num, del) + 1 << "个猴子为王!" << endl;
}

  评论这张
 
阅读(130)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017