约瑟夫问题
ZG_NODE
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
【约瑟夫问题】【队列】平凡的约瑟夫(Ordinary Josephus)
描述 n个人围成一圈,编号分别为从1到n.从第1个人开始报数,数到2的人出列,再由下一个人重新从1开始报数,数到2的人再出列,……依次类推,直到只剩下一个人.请输最后一个人的编号. (n<=100000) 输入 一个整数n 输出 若有解,则输出最后一个人的编码f(n) 若无解,则输出"No Solution." 输入样例 1 3 输出样例 1 3 这道题看起来很简单,但是n的大小让人汗颜,可能用循环链表都会超时。 那用队列怎么样? 用队列做约瑟夫问题是我上..原创 2021-08-14 10:27:05 · 222 阅读 · 0 评论 -
【循环链表】猴子选大王(约瑟夫问题)
描述 有n只猴子围成一圈,每个有一个编号,编号从1到n。打算从中选出一个大王。经过协商,决定选大王的规则如下:从第一只开始,每隔m只,数到的猴子出圈,最后剩下来的就是大王。 输入 输入为一行两个数,即n,m。 输出 输出最后剩下来的猴子序号。 输入样例 8 4 输出样例 6 循环链表是指最后一个空间指向头节点的链表类型,可以用于需要在多个数据之间来回循环的题目,比如约瑟夫问题(上面这道就是约瑟夫问题的改版)。普通约瑟夫问题可以用数组做,如上面这道题,用数组做就是这样: ..原创 2021-08-14 09:47:02 · 2007 阅读 · 0 评论
分享