鲁智深吃馒头,约瑟夫环问题
问题:99个人,99个馒头,来了一个鲁智深,找个位置把他放进去,然后每逢五的人,吃一个馒头,并且退场,最后让他无法吃。
在讲解数组应用等问题中,为学生展示该问题的求解方法。
问题抽象:
99个馒头,每次分一个
计数器:1-5
指针:0-99(循环)
当前数组元素值0或者1(数组初始值为0,当改变成1时,表明i号元素的和尚分到馒头)
代码如下:
int i=0;//馒头个数
int j=0;//指针
int k=1;//计数器
int a[100]={0};
while(i<99)
{
while(a[j]!=0)//分每个馒头开始,先找到第一个没分到馒头的人
j=(j+1)%100;
if(k==5) //遇到第5人的操作:置数组为1,馒头++,指针向下指j++,重新计数k=1
{
a[j]=1;
printf("The %d th people gets the %d th man tou.\n",j,i);
i++;
j=(j+1)%100;
k=1;
} //非第5人的情况
else
{
k++;
j=(j+1)%100;
}
}
鲁智深吃馒头,约瑟夫环问题相关推荐
- 数组的趣味应用-鲁智深吃馒头
鲁智深吃馒头 据说,鲁智深一天中午匆匆来到开封府大相国寺,想蹭顿饭吃,当时大相国寺有99个和尚,只做了99个馒头.智清长老不愿得罪鲁智深,便把他安排在一个特定位置,之后对所有人说: 从我开始报数(围成 ...
- C语言趣味题——鲁智深吃馒头问题
题目:鲁智深吃馒头 据说,鲁智深一天中午匆匆来到开封府大相国寺,想蹭顿饭吃,当时大相国寺有99个和尚,只做了99个馒头,智清长老不愿得罪鲁智深,便把他安排在一个特定位置,之后对所有人说,从我开始报数( ...
- 和尚吃馒头c语言程序,(八十一)约瑟夫环/鲁智深吃馒头
问题:99个人,99个馒头,来了一个鲁智深,找个位置把他放进去,然后每逢五的人,吃一个馒头,并且退场,最后让他无法吃. 代码: #include int main() { using namespac ...
- 猫抓老鼠c语言程序,猫抓老鼠问题C++实现一例(约瑟夫环问题)
今天偶然在网上看到了猫抓老鼠问题, 当时也没多想,只觉得网上给出的程序的确有很多需要改进的地方, 就闷头闷脑的用 循环链表 和 递归 写了一个算法实现,后来发现 这个问题实际上是经典的约瑟夫环问题的变 ...
- python中约瑟夫环程序_Python实现约瑟夫环问题的方法
本文实例讲述了Python实现约瑟夫环问题的方法.分享给大家供大家参考,具体如下: 题目:0,1,...,n-1这n个数字排成一个圆圈,从数字0开始每次从这个圆圈里删除第m个数字.求出这个圆圈里剩下的 ...
- 约瑟夫环问题的两种解法(详解)
约瑟夫环问题的两种解法(详解) 题目: Josephus有过的故事:39 个犹太人与Josephus及他的朋友躲到一个洞中,39个犹太人决定宁愿死也不要被敌人抓.于是决定了自杀方式,41个人排成一个圆 ...
- python约瑟夫环问题给十个学生编号报到3者出列_趣味算法--约瑟夫环问题(示例代码)...
问题描述 已知n个人(以编号1,2,3,...,n分别表示)围坐在一张圆桌上.指定编号为k的人开始从1报数,数到m的那个人出列:出列那个人的下一位又从1开始报数,数到m的那个人出列:以此规则重复下去, ...
- 一文读懂约瑟夫环算法
2020-05-25 20:13:40 作者 | 扬帆向海 责编 | 王晓曼 出品 | CSDN博客 问题描述 约瑟夫问题(有时也称为约瑟夫斯置换,是一个出现在计算机科学和数学中的问题.在计算机编程的 ...
- 面试题小记:1、统计字符串出现的次数,2、约瑟夫环问题
今天面到了一个比较有意思的笔试题,先记录一下: 1.字符串类似'aaabbccddd',写个方法得出'3a2b2c3d',即统计字符串出现的个数 $arr = str_split('aaabbccdd ...
最新文章
- Python开发工具PyCharm个性化设置备份
- python怎么自动生成测试报告_python生成接口自动化测试报告模版
- 干货 | 当你在携程搜索时,背后的推荐系统是如何工作的
- Maven下载+Maven环境变量配置+IntelliJ IDEA配置Maven(详细教程) ,收藏起来吧
- 如何解决 Angular custom library module 在 ng build 时无法被识别的错误
- Linux debian安装Typora教程
- snr matlab,cal snr - MATLAB 论坛讨论区 - EETOP 创芯网论坛 (原名:电子顶级开发网) -...
- Java中MVC详解以及优缺点总结
- kotlin学习笔记-异常好玩的list集合总结
- 第二期: 如何搭建 多用户的平台?(未完)
- XCode下的iOS单元测试
- 13.企业应用架构模式 --- 对象-关系元数据映射模式
- 【Docker】总集篇
- ThinkPHP如何URL如何去掉index.php(重写模式)
- 趋势linux版本杀毒软件,万万没想到,微软 Linux 版杀软来了
- linux 挂载裸设备,centos挂载裸设备问题
- 视觉3d中五折幕的震撼这就是沉浸式屏幕
- Unity游戏结构与引擎视图
- android 语音播报(通过手说tts 实现中文语音播报)
- SAP 中利润中心 详细解析
热门文章
- mac 删除系统应用
- torch.nn.MaxPool1d各参数分析
- 还在找免费的能提供HTTPS协议外链的图床?这个开源插件轻松完成
- button的几种使用方式
- 优盘格式化了怎么恢复里面的数据?
- 股票:开盘价 收盘价 涨停价 跌停价
- 很好的源码软件列表,有助于学习提高
- 重磅!《中国迈向新一代人工智能》全文来了。道翰天琼认知智能平台为您揭秘新一代人工智能。
- 【渝粤题库】广东开放大学 文化服务营销管理 形成性考核 (2)
- 和睦小镇保卫战服务器位置,植物大战僵尸和睦小镇保卫战隐藏黄金地精及机关位置汇总[多图]...