【学习笔记】AGC025
静下心来长脑子 。
Interval Game
- 要使移动的距离最大
- 显然左右横跳
- 一个方向显然不会跳两次
- 下证取 l i > x l_i>x li>x的最大的 l i l_i li最优
- 首先最优方案一定包含最大的 l i l_i li
- 考虑两次右移操作
- 交换操作顺序显然不劣 。
- 假如存在 l i < 0 l_i<0 li<0
- 如果 l i → 0 l_i\to 0 li→0,则贡献是 0 0 0,否则是 2 l i 2l_i 2li
- 我们希望最小的 l i l_i li是操作序列的结尾
- 显然上述构造是满足的
- 只要知道了初始方向,就可以模拟了。
Choosing Points
我是不是有刷水题的嫌疑- 如果只有一个 D D D
- 显然没有奇环
- a a a, b b b共同的 2 2 2显然可以约掉
- 如果 a a a, b b b为奇数,单看横坐标路径长一定是偶数
- 如果 a , b a,b a,b一奇一偶,单看横纵坐标之和路径长一定是偶数
其实并不重要- 二分图染色,求一个连通块能选的最大点数
- 如果有两个 D D D
- 分别染色,根据鸽巢原理,存在至少 n 2 n^2 n2个点为同色
为什么dfs染色会wa啊
Addition and Andition
- 如果有两个为 1 1 1的位置,就会一直左移,直到发生碰撞
- 同时如果发生碰撞,撞到的一定是那些原本静止不动的点
- 因此从高位往低位计算
- 对于每一位的贡献,从低位往高位计算
- 可以用栈模拟
- 每次碰撞会少一个点
- 因此复杂度 O ( n + m ) O(n+m) O(n+m) (和 K K K没关系哈哈哈
vscode好评
Differ by 1 Bit
- 巧妙的构造题
- 如果 A A A和 B B B有偶数位不同
- 显然无解
- 如果 A A A和 B B B有奇数位不同
- 否则对于任意 ( A , B ) (A,B) (A,B)一定有解,下给出构造
- N = 1 N=1 N=1有构造 { 1 , 0 } / { 0 , 1 } \{1,0\}/\{0,1\} {1,0}/{0,1}
- 因为把第 i i i位全部取反仍然合法
- 所以可以异或上 A A A,这样转化为构造 ( 0 , A xor B ) (0,A\text{xor}B) (0,AxorB)
- 可以把 B B B的任意一位 1 1 1砍掉
- 假设这一位是 j j j
- 考虑上半部分构造 ( 0 , 1 ) (0,1) (0,1),下半部分构造 ( 1 , B ) (1,B) (1,B)
- 这样 B B B的第 n n n位是 1 1 1
- 把第 j j j位和第 n n n位交换即可
vscode好评
Remainder Game
- K ≤ 50 K\le 50 K≤50
- 我会 B F S BFS BFS暴力预处理
- f [ i ] [ j ] f[i][j] f[i][j]表示从 i i i变成 j j j需要的最小代价
- 然后从高到低位贪心
- 注意细节
vscode好评
__EOF__

本文作者:仰望星空的蚂蚁
本文链接:https://www.cnblogs.com/cqbzly/p/17530126.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是博主的最大动力!
本文链接:https://www.cnblogs.com/cqbzly/p/17530126.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是博主的最大动力!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· DeepSeek 开源周回顾「GitHub 热点速览」