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