首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

圆圈最后剩余数字

,n-1这n个数字排成一个圆圈,从数字0开始每次从这个圆圈里删除第m个数字,求这个圆圈里剩余最后一个数字。...例如,0,1,2,3,4这5个数字组成环中,从数字0开始每次删除第三个数字,那么依次删除前四个数字就是:2,0,4,1 因此最后剩余数字是3。 解法一: 直观解法,将这环构造成一个环形链表。...while循环用于找到要删除节点为cur.next,cur用于记录待删除节点前导。...注意这里循环退出条件。...总结: 在一些数学比较敏感题目中,往往可以归纳出以一种简单解法,避免使用大量循环,当然解法一也是一种比较经典思路,设计问题,借用数据结构可以方便处理。

1.3K20
您找到你想要的搜索结果了吗?
是的
没有找到

孩子们游戏(圆圈最后剩下数) 孩子们游戏(圆圈最后剩下数)

题目描述 每年六一儿童节,牛客都会准备一些小礼物去看望孤儿院小朋友,今年亦是如此。HF作为牛客资深元老,自然也准备了一些小游戏。其中,有个游戏是这样:首先,让小朋友们围成一个大圈。...然后,他随机指定一个数m,让编号为0小朋友开始报数。...每次喊到m-1那个小朋友要出列唱首歌,然后可以在礼品箱中任意挑选礼物,并且不再回到圈中,从他下一个小朋友开始,继续0…m-1报数….这样下去….直到剩下最后一个小朋友,可以不用表演,并且拿到牛客名贵...(注:小朋友编号是从0到n-1) 解题思路 用环形链表模拟圆圈。创建一个总共有 n 个结点环形链表,然后每次在这个链表中删除第 m 个结点。注意,起步是-1 不是 0。...起步是 -1 不是 0 while(link.size() > 1){ index = (index + m) % link.size(); //对 link长度求余不是对

58130

剑指offer 圆圈最后剩下

题目描述 每年六一儿童节,牛客都会准备一些小礼物去看望孤儿院小朋友,今年亦是如此。HF作为牛客资深元老,自然也准备了一些小游戏。其中,有个游戏是这样:首先,让小朋友们围成一个大圈。...然后,他随机指定一个数m,让编号为0小朋友开始报数。...每次喊到m-1那个小朋友要出列唱首歌,然后可以在礼品箱中任意挑选礼物,并且不再回到圈中,从他下一个小朋友开始,继续0…m-1报数…这样下去…直到剩下最后一个小朋友,可以不用表演,并且拿到牛客名贵...(注:小朋友编号是从0到n-1) 解题思路 构建一个vector,保存孩子编号。...每次寻找喊到m-1那个孩子((start+m-1)%length),把他从vector中删除,然后设置新start(start=position%length),直至只剩下一个孩子 代码 class

38320

孩子们游戏---圆圈最后剩下

题目描述 每年六一儿童节,牛客都会准备一些小礼物去看望孤儿院小朋友,今年亦是如此。HF作为牛客资深元老,自然也准备了一些小游戏。其中,有个游戏是这样: 首先,让小朋友们围成一个大圈。...然后,他随机指定一个数m,让编号为0小朋友开始报数。...每次喊到m-1那个小朋友要出列唱首歌,然后可以在礼品箱中任意挑选礼物,并且不再回到圈中,从他下一个小朋友开始,继续0...m-1报数....这样下去....直到剩下最后一个小朋友,可以不用表演,并且拿到牛客名贵...// HF作为牛客资深元老,自然也准备了一些小游戏。 // 其中,有个游戏是这样:首先,让小朋友们围成一个大圈。...// 每次喊到m-1那个小朋友要出列唱首歌,然后可以在礼品箱中任意挑选礼物,并且不再回到圈中 // 从他下一个小朋友开始,继续0...m-1报数....这样下去....直到剩下最后一个小朋友

19720

【剑指offer:圆圈最后剩下数字】JavaScript实现

题目描述:0,1,,n-1 这 n 个数字排成一个圆圈,从数字 0 开始,每次从这个圆圈里删除第 m 个数字。求出这个圆圈里剩下最后一个数字。...例如,0、1、2、3、4 这 5 个数字组成一个圆圈,从数字 0 开始每次删除第 3 个数字,则删除前 4 个数字依次是 2、0、4、1,因此最后剩下数字是 3。...示例: 输入: n = 5, m = 3 输出: 3 解法 1: 数学规律 可以发现: n=1,最后剩下数字是 0 n=2,最后剩下数字是 (0 + m)%2 n=3,最后剩下数字是 ((0 +...m)%2 + m)%3 可以将上面的规律写成循环,第 n 次结果等于:(上次一次结果 + m)%n 代码实现如下: // ac地址:https://leetcode-cn.com/problems/yuan-quan-zhong-zui-hou-sheng-xia-de-shu-zi-lcof

74410

细数绘制一张全景所遇到

大家好,我是生信技能树学徒,前面我们带来了大量表达数据挖掘实战演练,但是TCGA数据库之丰富程度,值得我们花费多年时间继续探索,现在带来是突变全景,如果你对之前教程感兴趣,可以点击学习 菜鸟团...就是上面这张全景,我重复出来是下面这个样子。 ? 数据准备 绘制全景需要maf格式突变信息文件以及临床信息文件。 还是从XENA上进行下载 ?...需要注意,这里储存突变信息文件需要是maf格式,和我们之前根据是否存在该基因突变对样本进行分类文件不同。 ? 处理数据-R-maftools 1....:我们看一下临床信息“Tumor_Sample_Barcode”,是16位短ID,但是后来在使用read.maf读取maf文件时,发现下载maf文件“Tumor_Sample_Barcode”是长...,以及颜色对应关系列表如何制作,绘图函数怎么调用颜色信息。

1.1K20

LeetCode-面试题62-圆圈最后剩下数字

# LeetCode-面试题62-圆圈最后剩下数字 0,1,,n-1这n个数字排成一个圆圈,从数字0开始,每次从这个圆圈里删除第m个数字。求出这个圆圈里剩下最后一个数字。...例如,0、1、2、3、4这5个数字组成一个圆圈,从数字0开始每次删除第3个数字,则删除前4个数字依次是2、0、4、1,因此最后剩下数字是3。...1: 输入: n = 5, m = 3 输出: 3 示例2: 输入: n = 10, m = 17 输出: 2 限制: 1 <= n <= 10^5 1 <= m <= 10^6 # 解题思路1 著名约瑟夫环问题...第一轮[0,1,2,3,4],删去2 第二轮[3,4,0,1],删去0 第三轮[1,3,4],删去4 第四轮[1,3],删去1 最后一轮得到3,实际上每次删去都是加粗部分位置,第四轮由于只有2个数,...补全成环之后,实际上也是加粗部分位置,如[1,3,1,3] 原始数组是有序递增,所以下标就是数组值 最后一轮3下标是0,如果我们能够从最后数字下标反推回到原始数组,就能找到最终答案 反推方程,(

17510

剑指offer | 面试题49:圆圈最后剩下数字

| 面试题13:数值整数次方 剑指offer | 面试题14:打印从1到最大n位数 剑指offer | 面试题15:删除链表节点 剑指offer | 面试题16:将数组中奇数放在偶数前 剑指offer...剑指offer | 面试题30:字符串排列 剑指offer | 面试题31:数组中出现次数超过一半数字 剑指offer | 面试题32:最小k个数 剑指offer | 面试题33:连续子数组最大和...圆圈最后剩下数字 “题目描述 :0,1,···,n-1这n个数字排成一个圆圈,从数字0开始,每次从这个圆圈里删除第m个数字(删除后从下一个数字开始计数)。求出这个圆圈里剩下最后一个数字。...例如,0、1、2、3、4这5个数字组成一个圆圈,从数字0开始每次删除第3个数字,则删除前4个数字依次是2、0、4、1,因此最后剩下数字是3。...: n = 5, m = 3 输出: 3 示例 2: 输入: n = 10, m = 17 输出: 利用公式法:f[n] = (f[n-1] + k) mod n,或使用循环链表实现 “来吧,一胜千言

24020

圆圈最后剩下数字

一、题目0,1,···,n-1这n个数字排成一个圆圈,从数字0开始,每次从这个圆圈里删除第m个数字(删除后从下一个数字开始计数)。求出这个圆圈里剩下最后一个数字。...例如:0、1、2、3、4这5个数字组成一个圆圈,从数字0开始每次删除第3个数字,则删除前4个数字依次是2、0、4、1,因此最后剩下数字是3。...,然后这个数组会首尾相接从而组成一个圆圈。...那么我们每次从这个圆圈里删除第m个数字,从而求出最后剩余那个数字。...当最后剩余数字3时候,当前元素个数是1个,元素3所在位置index等于0;而且,我们可以得出第一个结论:只要是剩余最后1个元素,其index一定是0;那么,我们就从只有1个元素向上推导有2个元素,直到推导到

17220

剑指offer 孩子们游戏(圆圈最后剩下数)

每年六一儿童节,牛客都会准备一些小礼物去看望孤儿院小朋友,今年亦是如此。HF作为牛客资深元老,自然也准备了一些小游戏。其中,有个游戏是这样:首先,让小朋友们围成一个大圈。...然后,他随机指定一个数m,让编号为0小朋友开始报数。...每次喊到m-1那个小朋友要出列唱首歌,然后可以在礼品箱中任意挑选礼物,并且不再回到圈中,从他下一个小朋友开始,继续0...m-1报数....这样下去....直到剩下最后一个小朋友,可以不用表演,并且拿到牛客名贵...(注:小朋友编号是从0到n-1) package offer.LastRemaining_Solution; public class Solution { public int LastRemaining_Solution

34030

剑指offer——孩子们游戏(圆圈最后剩下数)

概述 题目描述 每年六一儿童节,牛客都会准备一些小礼物去看望孤儿院小朋友,今年亦是如此。HF作为牛客资深元老,自然也准备了一些小游戏。其中,有个游戏是这样:首先,让小朋友们围成一个大圈。...然后,他随机指定一个数m,让编号为0小朋友开始报数。...每次喊到m-1那个小朋友要出列唱首歌,然后可以在礼品箱中任意挑选礼物,并且不再回到圈中,从他下一个小朋友开始,继续0…m-1报数….这样下去….直到剩下最后一个小朋友,可以不用表演,并且拿到牛客名贵...(注:小朋友编号是从0到n-1) ---- C++ AC代码 #include using namespace std; class Solution { public

29740

盘龙小学最后一课之绘制堆积柱状

“过度参与”科研报告中,最抓眼球是下面这张统计。能想到用“堆积柱状方式呈现数据,是很难得。 ? 什么时候做堆积柱状呢?...当一个实验中存在多个组,且均检测了多个相同指标,检测结果需要在一张图中进行组间比较,此时最适合采用堆积柱状。 大家看可以看看同样数据,采用传统多组间比较柱状呈现,显得非常冗杂,不够直观。...而堆积柱状就顺眼多了。 ? Follow me!最后一课,就让咱们完美复现这张堆积柱状! ---- 1. 做堆积柱状,你需要以下素材:Graph Pad Prism、计算好数据、本推文。...3.按照下图所示格式,输入已计算好数据。 ? 注意:图中红框所示,在输入时别将标签名字位置弄错了,否则最后输出图表标签也是反。 4. 数据写填好之后,选择输出为“堆积柱状”,如下。...点击OK后可以看到G0/G1柱颜色和标签都变成蓝色了。然后用同样办法依次修改其它柱颜色。 ? ? 7.双击Y轴轴线,在弹框中进行如下设置。

84530

剑指Offer-孩子们游戏(圆圈最后剩下数)

package Other; import java.util.LinkedList; /** * 孩子们游戏(圆圈最后剩下数) * 每年六一儿童节,牛客都会准备一些小礼物去看望孤儿院小朋友...HF作为牛客资深元老,自然也准备了一些小游戏。 * 其中,有个游戏是这样:首先,让小朋友们围成一个大圈。然后,他随机指定一个数m,让编号为0小朋友开始报数。...* 每次喊到m-1那个小朋友要出列唱首歌,然后可以在礼品箱中任意挑选礼物,并且不再回到圈中,从他下一个小朋友开始, * 继续0...m-1报数....这样下去....直到剩下最后一个小朋友,可以不用表演...,n-2,n-1 * 按照规定,第一个出队的人编号是 k = (m-1)%n,(对n取余是考虑到m>n情况),记最后剩下的人编号为 F(n, m) * 接下来从编号为k+1的人开始报数...这里变量x表示上面数列(*)元素,p(x) 表示上面数列(**)中相同位置对应值 * 然后我们实际上需要映射是描述 (**)--->(*) 函数,即为p^(x) * 如果找到这样映射

54950

剑指offer No.49 孩子们游戏(圆圈最后剩下数)

www.nowcoder.com/questionTerminal/f78a359491e64a50bce2d89cff857eb6 来源:牛客网 每年六一儿童节,牛客都会准备一些小礼物去看望孤儿院小朋友...HF作为牛客资深元老,自然也准备了一些小游戏。其中,有个游戏是这样:首先,让小朋友们围成一个大圈。然后,他随机指定一个数m,让编号为0小朋友开始报数。...每次喊到m-1那个小朋友要出列唱首歌,然后可以在礼品箱中任意挑选礼物,并且不再回到圈中,从他下一个小朋友开始,继续0...m-1报数....这样下去....直到剩下最后一个小朋友,可以不用表演,并且拿到牛客名贵...(注:小朋友编号是从0到n-1) package offer.LastRemaining_Solution; public class Solution { public int LastRemaining_Solution

20040

【译】如何绘制一张完整健康图谱

随着科技进步,只要我们展开想象翅膀,无限商机会在等待我们。最近数字健康投资告诉我们,瓦解旧格局力量正在迅速崛起,一个崭新未来正在等待我们。...在你开始通过mint.com管理你财务之后,你就很难再回到以前了。Mint为你提供了金融信息一站式服务,成为连接你与储存你大量数据金融机构智能连接器。数据是安全,流动,可转化。...受互联网经过验证技术鼓舞,阿尔戈项目的目标是用一个更精简、网络友好版本取代沉重、复杂卫生交互性标准。...没有这些功能,数据流动性仍将是白日梦,它只会将数据锁定在各自应用和电子病历中数据仓库中,无法防止某些错误发生以及改善医疗服务效果,或降低服务成本。...API建立在一个安全平台,该平台可以沟通健康数据仓储并实现信息安全流动。他们是连接数据共享健康生态系统核心,它允许数据在广泛利益相关者之间自由流动。

655130

每天一道剑指offer-孩子们游戏(圆圈最后剩下数)

正当班主任要继续发话,只听到角落默默响起来一个声音:”乔戈里峰” 题目 每天一道剑指offer-孩子们游戏(圆圈最后剩下数) https://www.nowcoder.com/practice/f78a359491e64a50bce2d89cff857eb6...HF作为牛客资深元老,自然也准备了一些小游戏。其中,有个游戏是这样:首先,让小朋友们围成一个大圈。然后,他随机指定一个数m,让编号为0小朋友开始报数。...每次喊到m-1那个小朋友要出列唱首歌,然后可以在礼品箱中任意挑选礼物,并且不再回到圈中,从他下一个小朋友开始,继续0...m-1报数....这样下去....直到剩下最后一个小朋友,可以不用表演,并且拿到牛客名贵...list.size() > 1) { a = (a+m-1) % list.size(); list.remove(a);//每次删除,直到留下最后那一个...} if(list.size() == 1) return list.get(0);//数组只剩下最后一个 return -1; } }

85830
领券