agc025 题解
A \(\color{gray}\bigstar\)
破题,直接枚举。
B \(\color{gray}\bigstar\)
因为一个格子可以两个都染,相当于两颜色独立,直接枚举算组合数即可。
C \(\color{green}\bigstar\)
贪心,从原点出发,一定是到区间左端点,右端点,左端点这样。
如果直接去考虑选出那些点比较困难,不如直接贪心,选左端点最大,右端点最小这样依次选。
考虑一下开头选什么,两种情况讨论即可。
D \(\color{gold}\bigstar\)
开始考虑这个东西显然不能贪心染。
对于只有一个 \(D_1\),考虑对于一个位置,如果钦定其不选,那么周围一圈上的点就可以选了,然后可以证明周围一圈上的点全部选一定合法。
相当于证明网格图不存在等边三角形,这个因为面积是有理数,而面积有边长表示是无理数即可。
然后不会了。
看题解,发现可以归纳出连边后不存在奇环,也就是二分图。
那就简单了,跑出两个二分图,取两个部分取个并,那么一定有一个部分 \(\ge n^2\)。
E \(\color{Gold}\bigstar\)
神秘构造题。
答案上界显然是对于每条边,其覆盖次数和 \(2\) 取个 \(\min\) 加起来。
然后一点都不会。
做法很震撼,考虑构造出这个答案上界,如果所有的边的覆盖次数都是偶数,相当于所有路径可以收尾相连,跑一个欧拉回路即可,这样甚至可以保证每条边被两种覆盖次数相同。
但是可能会有边覆盖次数是奇数,考虑对于这些边,我直接在欧拉图上建这样一条边,这样就成功的串联起来,并且中间这些边被两种覆盖次数的差 \(\le 1\),一定合法。
复杂度 \(O(n\log n)\)。
F \(\color{blue}\bigstar\)
?题。
最短解第一页好像都是暴力。。。不是用脚都能卡掉吗。
考虑从高到低位,每一位都只会向后跑,那么考虑如果上下都是 \(1\) 相当于向后平移一个,平移直到会发生进位。
暴力做法就每次一步一步向后条,正解就考虑上下都是 \(0\) 的地方会直接跳过,因此只需要把所有上下有一个是 \(1\) 的位置记录下来,然后暴力条即可,复杂度用势能证明一下是 \(O(n)\) 的。