AT 经典90题(031-060)
31.VS AtCoder
考虑 sg 函数,每次异或上
32.AtCoder Ekiden
考虑全排列枚举跑步顺序并判断不合法即可。
33.Not Too Bright
先特判
34.There are few types of elements
考虑使用双指针,如果
35.Preserve Connectivity
经典结论,先把给出的点按照 dfn 排序。求的东西就是
36.Max Manhattan Distance
直接曼哈顿转切比雪夫,然后答案就是当前的点的
37.Don't Leave the Spice
考虑朴素背包
38.Large LCM
比较
39.Tree Distance
考虑换根 dp,先算出
答案就是
40.Get More Money
我们设源点为
割掉源点连出边的意义是不去这个点,割掉一个点到汇点的边的意义是这条边要选,所以要花费
41.Piles in AtCoder Farm
考虑毕克定理,
不难发现连出的图形一定是一个凸包,凸包的
42.Multiple of 9
首先
43.Maze Challenge with Lack of Sleep
考虑每个点有一个状态
44.Shift and Swapping
直接使用 deque 模拟这一过程即可。注意 deque 的下标从
45.Simple Grouping
考虑状压 dp,设
46.I Love 46
考虑本质不同的数再每个序列中至多出现
47.Monochromatic Diagonal
不难发现如果这一条对角线合法,等价于
设
分类讨论一下即可证明上面的操作是对的。
48.I will not drop out
考虑把
49.Flip Digits 2
经典套路,对于每个区间连一条
50.Stair Jump
设
51.Typical Shop
考虑把序列拆成两半考虑,算出前一半用
52.Dice Product
不难发现答案为每个骰子上的数的和的乘积,注意取模即可。
53.Discrete Dowsing
考虑使用黄金分割法求出单峰函数的极值,具体可以搜索一下这个东西,这里只做简要介绍。大致就是每次显然可以判断出一部分区间不再合法,把不合法那边的端点挪到另一个端点上,然后重复这一过程。
54.Takahashi Number
把每个人与所在论文连一条边权为
55.Select 5
暴力枚举选哪
56.Lucky Bag
考虑设
57.Flip Flap
我们使用高斯消元法求出拼出该状态最少需要多少开关,剩下的都是自由元。然后先把无解判掉,否则每个自由元都可以选或不选,答案就是
58.Original Calculator
不难发现变化过程是一条链加一个环,只需把在环上走的步数对环长取模即可。
59.Many Graph Queries
考虑到每次处理一个询问太慢,且图是有向无环的,于是每次处理
60.Chimera
我们设
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】