华为2021春招笔试: 约瑟夫环III

笔试遇到一个约瑟夫环 (人们站在一个等待被处决的圈子里。 计数从圆圈中的指定点开始,并沿指定方向围绕圆圈进行。 在跳过指定数量的人之后,处刑下一个人。 对剩下的人重复该过程,从下一个人开始,朝同一方向跳过相同数量的人,直到只剩下一个人,并被释放) 的变体:
给定人数和报数后要求输出依次出列的人的初始编号.

我用python数列模拟了整个报数过程, 但是算法超时,只AC了40%. (不知道用c++链表能不能100%AC.)

约瑟夫环原题是求最后幸存者的初始编号, 有递推公式
不知有没有类似的数学分析方法可以求出每轮出列的编号呀

#华为#
全部评论

相关推荐

头像 头像
昨天 14:12
已编辑
美团_算法工程师
先说结论:实力足够的话,肯定是暑期实习更好。但要论性价比,还是日常实习高。尤其对于之前没有实习经历的同学,我更推荐多投日常实习。原因如下:1. 门槛差异大:当前大环境越来越卷,暑期实习难度直逼秋招,要想拿暑期实习,往往需要你之前就有实习日常实习的难度虽有提升,但还是有很多大厂是愿意包容0实习经历的同学的,尤其是非热门岗位,难度明显低很多。2. 对正式招聘的影响差异小:暑期实习和日常实习最大的区别就在于,是否有机会申请转正。一方面,暑期实习未必能转正成功,如果没有转正成功或是放弃转正,在秋招时申请其他公司,和日常实习没有任何区别(也没人会在简历里专门写日常/暑期)。另一方面,家花不如野花香,很多公司对于自家转正的暑期实习会压价,因此秋招时更多人会选择别的公司,回到第一方面,此时暑期与日常没有区别。此外,不少公司的日常实习可以申请转暑期实习,甚至可以直接申请转正,进一步减小了与暑期实习的区别。有同学可能觉得,暑期实习会重点培养,而日常实习拿的都是边角料项目。但其实机会都是人争取来的,如果不沟通,mentor怎么知道你是真想学东西,还是想来混一段经历?有想要提升自己的诉求,大可以大大方方与mentor说:“我想从这段实习里多学点东西,希望能借此转暑期/转正,希望能给我些有挑战性的工作。”大部分mentor都能理解满足大伙的诉求,毕竟他们曾经也是从萌新一步步过来的最后,祝大家都能找到理想的工作!也可以看看我之前写的求职经验帖~ #美团校招#  #美团工作体验#  #美团2024届秋招#  #想实习转正,又想准备秋招,我该怎么办#  #不给转正的实习,你还去吗#   【经验篇】从入土到入职|实习秋招的准备建议_牛客网 https://www.nowcoder.com/share/jump/2606274211713329812078
点赞 评论 收藏
转发
1 3 评论
分享
牛客网
牛客企业服务