约瑟夫环问题
来源:互联网 发布:js c标签的if else 编辑:程序博客网 时间:2024/06/07 05:27
约瑟夫环问题就是n个人围成一圈,数到m的人退出,求最后退出的人
解决办法:
n个人围成一圈,编号分别为0~n-1,数到m-1的人退出。
第一次退出的人很明显为(m-1)%n,则剩下n-1个人,这就变成了求n-1个人中最后退出的人。
将(m-1)%n以后的人再从0开始编号,这n-1个人的编号与开始n个人的编号相差为m
f(n)表示n个人最后退出的编号
当只有一个人时,f(1)=0,因为只有1个人,它就是最后退出的人。
假设f(n-1)已知(表示已经求出n-1个人时最后退出的编号)。f(n-1)是相对于n-1个人时的编号
则f(n)=(f(n-1)+m)%n
最后的递推式f(k)=(f(k-1)+m)%k f(1)=0
当然记得最后的编号要加1
0 0
- 约瑟夫问题、约瑟夫环
- Josephus约瑟夫环问题
- 约瑟夫环问题
- 约瑟夫环问题(Josephus)
- 约瑟夫环问题--java
- 约瑟夫环问题 Josephus
- 约瑟夫环问题
- 约瑟夫环问题
- 约瑟夫环问题
- 约瑟夫环问题
- 约瑟夫环问题
- 求解约瑟夫环问题
- 约瑟夫环问题
- 约瑟夫环问题
- 约瑟夫环问题
- 约瑟夫环问题
- 约瑟夫环问题
- 约瑟夫环问题
- 77. Combinations
- javaWeb 判断是否是 multipart/form-data 请求
- byte[]数组和int之间的转换
- springmvc简单入门
- 银行对公业务的发展方向,及多银行资金管理云服务的探索
- 约瑟夫环问题
- ubuntu下zip乱码问题的解决
- Python 数组操作技巧总结[持续更新]
- 栈的顺序表示和实现
- 【Oracle】ORA 01810 格式代码出现两次
- 【腾讯Bugly干货分享】微信终端跨平台组件 mars 系列(一) - 高性能日志模块xlog
- HDU 2833 WuKong 最短路
- 一个数组有除了两个元素只出现一次,其他元素全部都出现了两次,请找出只出现一次的两个元素,并输出
- css2.09_其他选择器的补充