NOIP 模拟赛:2024-11-26
T1:
当你发现你的算法仅对
请构造满足如下要求的序列
- 首先,元素在
的所有整数中选,每个整数最多出现一次; - 其次,保证序列中相邻的元素都不互质;
- 最后,在满足前述条件的基础上,使得序列最长。
请输出构造的序列长度和该序列。
容易想到这么一个构造:偶数都放进来;奇数,如果存在两个偶数和它都不互质,插入到这两个之间;然后挑两个只存在一个偶数和它不互质的数放两边。
线性筛求出每个数的最小质因数即可。细节比较繁琐,为了避免在特殊数据下出错直接把
T2:
当你试图增加优化,思考两件事:
-
它真的有必要吗?
-
它会使得正确性出错吗?
有一间无限酒店有无穷多个房间,编号为
由于是无限酒店,一个新的团队来了总能顺利入住,具体方式为
- 如果团队人数有限:记团队人数为
,则先将每个原 号房间的人都移动到 ,然后让新的团队入住在 号房间; - 如果团队人数无限:先将每个原
号房间的人移动到 ,然后让新的团队入住在奇数编号房间。
你需要维护酒店的如下操作需求
1 k
:如果 ,表示有 人的团体入住酒店;如果 ,表示有无穷多人的团体入住酒店。注意团体按本操作的顺序从 编号;2 g x
:输出编号为 的团体占据的房间中,第 小的房间编号,对 取模;3 x
:输出此时 号房间中的客人对应的团体编号。
认为开始时所有房间都住着一个来自
每个团队的人的房间编号可以视作一个函数
前两种操作可以线段树,甚至可以只打全局 tag 完成。瓶颈在于操作 3。
首先,操作 3 的
其次,再对每一段非
如果
T3:
有
给定正整数
最终,从一个城市去往
请对每一个可能的起点城市,求出旅行的最大快乐度是多少。
按
T4:
给定两棵树
定义
定义两个结点编号
树上路径问题先无脑考虑点分治,点分治不太行考虑点分树。发现做不了也留一个心眼,说不定暴力枚举套一个树高
两条路径涉及四个点的编号:
考虑枚举
为了避免
这肯定过不了,但如果我们把
还有一个问题:怎么存
答案是不存。记录一个数组
搜完的
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!