面试经典(23)--圆圈中剩下的最后数字

【数据结构与算法_java】面试题及答案汇总 文章目录一、剑指offer:50道金典面试题题目1:赋值运算符函数面试题2:实现单例模式面试题3:二维数组中的查找二、LeetCode上经典题目三、其他金典面试题 前    言 本文将收录《剑指offer:50道金典面试题》、LeetCode上部分经典题目以及其他【据结构和算法】数面试题。 PS:持续更新中,敬请期待~~ 正    文 一、剑指offer:50道金典面试题 题目 阅读详情

题目:0,1,...,n-1这n个数字排成一个圆圈,从数字0开始每次从这个圆圈里面删除第m个数字。求这个圆圈里剩下的最后一个数字。

解法1:数组模拟

使用数组来模拟的话空间复杂度和时间复杂度都会比较高,不过为了锻炼下逻辑思维,我们先使用数组。将长度为n的数组初始化0,变量count表示当前退出的人数,只要count=n-1就可以完成任务。t表示报数计数,当t=m时就将数组当前i位置元素置1,表示i位置元素退出,遍历数组遇到元素为1的位置直接跳过。先处理要特殊处理的情况,然后再处理正常逻辑部分。

代码如下:

//n个人从0--n-1编号,从第一个人报数,数到m的退出.
int FindLastOne(int n,int m)
{
	if(n<1 || m<1)
		return -1;
	int *data=new int[n];
	memset(data,0,n*sizeof(int));
	int t=0,count=0,i=0;
	while(count<n-1)
	{
		if(data[i]==0)
			t++;
		if(t==m)
		{
			t=0;
			data[i]=1;
			++count;
		}
		i++;
		if(i==n)
			i=0;
	}
	int res;
	for(i=0;i<n;i++)
		if(data[i]==0)
			res=i;
	delete[] data;
	return res;
}
解法2:数学魅力

int lastRemain(int n,int m)
{
	if(n<1 || m<1)
		return -1;
	int last=0;
	for(int i=2;i<=n;i++)
		last=(last+m)%i;
	return last;
}



吃透 AM32 无人机电调:从源码架构到工作原理的全方位解析(附实践指南)(上) 本文深入解析了AM32电调固件的源码架构与核心模块实现。文章首先介绍了AM32电调作为开源无人机;动力心脏的重要地位,随后从硬件基础、源码目录、模块划分三个维度构建解析框架。重点剖析了系统初始化模块的时钟配置、GPIO初始化和定时器设置,以及FOC控制模块的坐标变换算法、角度估算和SVPWM生成等关键技术实现。通过逐行代码解析,揭示了电调如何将飞控指令转换为电机驱动的完整过程,为开发者理解AM32电调工作原理提供了系统性指导。 阅读详情

相关推荐

人形机器人人机交互解决方案(2026完整版)

《人形机器人人机交互解决方案(2026完整版)》摘要 本项目针对2026年人形机器人产业爆发式增长需求,提出了一套完整的人机交互解决方案。方案包含十大核心模块(语音识别、情感识别、手势识别等),采用五层架构设计,实现多模态融合交互,响应时间≤32ms,准确率≥99%。覆盖制造业巡检、家庭服务等10大场景,适配20+主流机型。项目总投资4.1亿元,预期年营收8.2亿元,将申请专利120项,培养专业人才300人。通过技术创新解决当前交互体验生硬、安全可控性不足等痛点,助力我国人形机器人产业实现从"跟跑

随读手记 774

面试题.62.圆圈中最后剩下的数字

面试题.62.圆圈中最后剩下的数字 文章目录题目分析Solution 题目分析 约瑟夫环问题 f(n, m) = (f(n – 1, m) + m) % n 如果编号从1开始,即结果+1,向后一个 Solution public int lastRemaining1(int n, int m) { return (n == 1) ? 0 : (lastRemaining1(n - 1, m) + m) % n; } // f(1, 3) = 0 //

高一少年的博客 241

GlobalMapper地形对比与方量计算实战:从两期数据到填挖方区域精准提取

本文详细介绍了使用GlobalMapper进行地形对比与方量计算的实战方法,从两期数据准备到填挖方区域精准提取。通过三步核心操作和实用技巧,帮助工程师高效完成土方平衡分析,提升工程预算精度。特别适用于河道整治、湿地修复等工程项目,大幅减少人工计算误差和时间成本。

weixin_28698059的博客 221

3种方法: 圆圈中最后剩下的数字

通过(暴力法、循环、递归)3种方法,得到圆圈中最后剩下的数字...

具身小站 4035

本地部署 Bolt.new - 小学生都能轻松搭建AI编程环境

本地部署 Bolt.new - 小学生都能轻松搭建AI编程环境

engchina的专栏 8624

智能车竞赛循迹控制:基于状态机的直道、弯道、十字路口处理策略

在嵌入式系统与自动控制领域,PID控制算法是实现精确运动控制的基础。其原理是通过比例、积分、微分三个环节的线性组合,对系统误差进行实时校正,从而实现对目标值的快速、稳定跟踪。这项技术的核心价值在于为各类自动控制系统提供了稳定、可靠且易于实现的解决方案,广泛应用于机器人、无人机、工业自动化等场景。在智能车循迹这类特定应用中,赛道环境复杂多变,单一的PID控制器难以应对直道、弯道、十字路口等不同赛道元素的控制需求。此时,有限状态机(FSM)作为一种高效的**决策框架**,能够根据实时感知的赛道特征(如边线曲率、

weixin_34034261的博客 282

leetcode-圆圈中最后剩下的数字

 题目来自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 输出...

JR_Chan的博客 466

Signoff Criteria --- ocv/aocv/pocv之AOCV介绍

Advanced on chip variation,相比较于OCV来说,对于悲观度的去除很有效。相比较与ocv对于整个design中的lauch/capture path设置统一的derate值,aocv通过将cell derate值与cell的逻辑深度以及实际的位置结合起来进行derate值的设定。那么这种derate如何能够设置到具体的cell呢,其实是我们在跑STA时候会读入相关的aocv lib file,里面有专门对相关的cell进行的aocv derate值的描述。> table: \

sinat_27691203的博客 7853

面试题62. 圆圈中最后剩下的数字

题目来源 leetcode 题目描述 题目解析 模拟 注意不能用LinkedList,要用ArrayedList。ArrayedList删除时是连续空间访问,而LinkedList是非连续空间访问,ArrayedList性能更好 class Solution { public int lastRemaining(int n, int m) { ArrayList<Integer> list = new ArrayList<>(); for (

OceanStar的博客 157

KingSCADA3.8保姆级安装教程

大家好,我是雷工!最近开始学习KingSCADA,今天这篇详细记录安装KingSCADA3.8的过程。首先下载需要的安装版本,此处以从官网下载的最新版本KingSCADA3.8为例,双击:Setup.exe;

做有价值的事,积累有价值的笔记! 1万+

关于Sybase ASE数据库的license以及试用版过期的问题的解决方案

当用户从Sybase官网上下载了ASE15.0.2以后,如果选择了安装Express Edition或者Developer Edition,基本上不会碰到什么问题,除了有些功能受限以下。 但大多数可能选择了Enterprise Edition for Evaluation类型,即企业版试用。都会碰到这样的问题,即一个月以后,license过期,无法启动server。于是很郁闷,可能大部分人,会选...

iihero@优快云 790

题解 | #孩子们的游戏(圆圈中最后剩下的数)#

今年大四,没有实习经验,没有比赛获奖,大一学的C语言,大二大三大多用的MATLAB,投了很多简历,至今没有一个面试,我好慌(是不是不应该投软件方面,但我又不知道。去哪儿收到面试通知,约的节后,说一天面完,先第一面,第二面、hr面一天面完,去哪儿前端面试一般问些什么秋招收到的面试一般是测试的,前端这还是第二次面,有点害怕哪。211本,955国企,在省会,总包接近13个,到手是不是很低啊,值得去吗 #晒一晒我的offer# #软件开发薪资爆料# #在找工作求抱抱# #找工作中的意难平。友友们,帮忙选一选!

2301_79125642的博客 78

YOLOv11改进策略【注意力机制篇】| SE、CBAM、ECA、CA、Swin Transformer等注意力机制全面解析与应用

本文详细介绍了五种主流的注意力机制及其在YOLOv11中的应用。通过合理的模块选择和位置部署,注意力机制能够显著提升目标检测性能。

QQ_778132974的博客 873

java 个位5为结尾的数字_《剑指offer》面试题45 圆圈中最后剩下的数字(Java版本)...

引言这道题网上的讲解都是直接抄书,没意思,所以想自己写一写,补充一下,便于自己理解。另外,大家都忽略了经典解法,虽然这种解法效率不及第二种,但是我觉得在项目当中阅读性其实很重要,牺牲一点点效率保证代码的可维护性和阅读性是值得的。与此同时,第二种方法其实需要比较好的数学功底,我不认为一般的程序员在毕业多年之后还能保证自己的数学功底,而且在面试的时候你能在短时间和高压下准确的推导吗?我相信有人能做到,...

weixin_33305182的博客 211

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

《剑指offer》面试题45 圆圈中最后剩下的数字(Java版本)

引言 这道题网上的讲解都是直接抄书,没意思,所以想自己写一写,补充一下,便于自己理解。另外,大家都忽略了经典解法,虽然这种解法效率不及第二种,但是我觉得在项目当中阅读性其实很重要,牺牲一点点效率保证代码的可维护性和阅读性是值得的。与此同时,第二种方法其实需要比较好的数学功底,我不认为一般的程序员在毕业多年之后还能保证自己的数学功底,而且在面试的时候你能在短时间和高压下准确的推导吗?我相信有人能做...

weixin_30770495的博客 208

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

《剑指Offer名企面试官精讲经典型编程题》

《剑指Offer名企面试官精讲经典型编程题》源于何海涛(http://zhedahht.blog.163.com/)坚持更新和撰写博客。本书收集并整理了许多IT名企的经典面试题,如:微软、Google等。书中主要从:面试流程、基础知识、高质量的代码、常用解题思路、时间和空间优化、面试能力这几个方面讲解面试技巧。此书非常适合程序猿用于求职面试准备。书中供包含50个面试题:我收集并整理了这50个题目并

永不言弃01 1269

名企经典面试题

《剑指Offer》一书源自该书作者何海涛坚持更新与编写的博客(http://zhedahht.blog.163.com/),该博客收集整理了大量如微软、Google等知名IT企业的经典面试题。《剑指Offer》一书在此基础上选取了50个典型的程序员面试题,从基础知识、代码质量、解题思路、优化效率和综合能力五个方面系统整理了影响面试的5个要点,难度适中,讲解清晰,非常适合程序猿用于准备求职面试。 

Keep Moving~ 1695

《剑指Offer:名企面试官精讲典型编程题》一书中IT名企经典面试题

各位程序猿:         《剑指Offer》一书源自该书作者何海涛坚持更新与编写的博客(http://zhedahht.blog.163.com/),该博客收集整理了大量如微软、Google等知名IT企业的经典面试题。《剑指Offer》一书在此基础上选取了50个典型的程序员面试题,从基础知识、代码质量、解题思路、优化效率和综合能力五个方面系统整理了影响面试的5个要点,难度适中,讲解清晰,

OSKernelLAB(gatieme) 2060

【强烈推荐】《剑指Offer:名企面试官精讲典型编程题》一书中IT名企经典面试题

各位程序猿:         《剑指Offer》一书源自该书作者何海涛坚持更新与编写的博客(http://zhedahht.blog.163.com/),该博客收集整理了大量如微软、Google等知名IT企业的经典面试题。《剑指Offer》一书在此基础上选取了50个典型的程序员面试题,从基础知识、代码质量、解题思路、优化效率和综合能力五个方面系统整理了影响面试的5个要点,难度适中,讲解清晰,

安源 307

大神整理的剑指Offer【所有面试题汇总】

    剑指Offer学习   剑指Offer这本书已经学习完了,从中也学习到了不少的东西,现在做一个总的目录,供自已和大家一起参考,学如逆水行舟,不进则退。只有不断地学习才能跟上时候,跟得上技术的潮流! 所有代码下载【https://github.com/Wang-Jun-Chao/coding-interviews】 目录 第01-10题 【剑指Offer学习】【面试题02:...

晓飛的博客 3万+

【强烈推荐】 剑指Offer 名企面试官精讲典型编程题 一书中IT名企经典面试题

【强烈推荐】 剑指Offer 名企面试官精讲典型编程题 一书中IT名企经典面试题

fguihbfg的博客 218
上一篇: 面试经典(22)---字符串组合
下一篇: 面试经典(24)--二叉搜索树和双向链表
OS技术解密
博客等级 码龄16年 3760粉丝 189原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值