没啥难度,还是难以判断测试用例的问题,也就是k是否大于10,否则就会采用字符串进行判断; #include<iostream> #include<vector> #include<queue> #include<string> using namespace std; int n, k; struc ...
分类:
其他好文 时间:
2020-04-11 18:39:27
阅读次数:
67
2020-04-10 11:40:30 问题描述: 0,1,,n-1这n个数字排成一个圆圈,从数字0开始,每次从这个圆圈里删除第m个数字。求出这个圆圈里剩下的最后一个数字。 例如,0、1、2、3、4这5个数字组成一个圆圈,从数字0开始每次删除第3个数字,则删除的前4个数字依次是2、0、4、1,因此最 ...
分类:
其他好文 时间:
2020-04-10 12:19:33
阅读次数:
94
圆圈中最后剩下的数的问题可以看成约瑟夫问题,即谁是最后的胜利者。使用递归公式解决 ...
分类:
编程语言 时间:
2020-04-10 11:58:02
阅读次数:
71
Description约瑟夫问题:有n个人,按顺时针方向围成一圈(编号从1到n),从第1号开始报数,一直数到m,数到m的人退出圈外,剩下的人再接着从1开始报数。,编程求输入n,m后,输出出圈的序号。Input每行是用空格分开的两个整数,第一个是 n, 第二个是 m ( 0 < m,n <=300)。 ...
分类:
其他好文 时间:
2020-04-06 13:57:52
阅读次数:
53
约瑟夫问题:n个人围坐成一圈,从1开始顺序编号;游戏开始,从第一个人开始由1到m循环报数, 报到m的人退出圈外,问最后剩下的那个人原来的序号。 问题分析:面对这样循环报数的数据,我们最容易想到的就是用数组进行报数的模拟,最后把存活的人的编号输出。 先贴上这种思路的代码: 1 #include<ios ...
分类:
其他好文 时间:
2020-04-02 15:43:44
阅读次数:
66
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4841 约瑟夫问题,确定一个数m,共有n个人,循环报数,数到m就出队,后面的数跟在其后,这是一个典型的链表删除操作的应用,我先用vector写了一中操作方案,vector对于随机访问元素的时间复杂度是O( ...
分类:
其他好文 时间:
2020-03-31 23:19:36
阅读次数:
137
题目:圆圈中最后剩下的数字 0,1,,n-1这n个数字排成一个圆圈,从数字0开始,每次从这个圆圈里删除第m个数字。求出这个圆圈里剩下的最后一个数字。 例如,0、1、2、3、4这5个数字组成一个圆圈,从数字0开始每次删除第3个数字,则删除的前4个数字依次是2、0、4、1,因此最后剩下的数字是3。 示例 ...
分类:
其他好文 时间:
2020-03-30 23:41:26
阅读次数:
127
这是道数学题,说实话,我是不太喜欢做的,因为主要是公式的推导。无奈每日一题。 约瑟夫环,有兴趣可查,本人的智商就算了,从小到达公式都是死记硬背的。 func lastRemaining(n int, m int) int { ans := 0 for i := 2; i <= n; i++ { an ...
分类:
其他好文 时间:
2020-03-30 23:16:54
阅读次数:
54
题目:0,1,,n 1这n个数字排成一个圆圈,从数字0开始,每次从这 个圆圈里删除第m个数字。求出这个圆圈里剩下的最后一个数字。 例如,0、1、2、3、4这5个数字组成一个圆圈,从数字0开始每次删除第3个数字,则删除的前4个数字依次是2、0、4、1,因此最后剩下的数字是3。 Code: ...
分类:
其他好文 时间:
2020-03-30 19:28:23
阅读次数:
72
经典的约瑟夫环,n个人排成一圈,第m个出队。 递归 code1 非递归 code2 ...
分类:
其他好文 时间:
2020-03-30 11:15:17
阅读次数:
52