USACO 2024 1月月赛

S1

题解

S2

显然最少次数就是叶子个数 \(l\)。那么 \(p_{l+1}\sim p_n\) 都不会用到。

对于 \(p_1\sim p_l\),我们要尽量让它们放在路径上。

枚举每一条根到叶子的路径,选择路径上深度最低的 \(p\) 与这条路径匹配(没有就不匹配了)。

用树剖即可。

S3

先对 \(a\) 去重。前四个数内必然有两个模 \(L\) 同余。

枚举前四个数是哪两个同余,然后枚举它们差的因数为 \(L\),接着 \(O(n)\) 判断:复杂度 \(O(n\sqrt V)\)\(V\) 是值域。

G1

把所有路分成四种:\(x\) 为奇数的垂直路,\(x\) 为偶数的垂直路,\(y\) 为奇数的水平路,\(y\) 为偶数的水平路。

倍增。令一条路的 "父亲" 为它之后第一条与它同方向但奇偶性相反的路。\(row[i][j]\) 为第 \(i\) 条水平路的第 \(2^j\) 级祖先,\(col[i][j]\) 同理。

先让奶牛走到第一个交叉口,然后就可以行列倍增跳过去。

G2

题解

posted @ 2024-02-16 09:40  FLY_lai  阅读(40)  评论(0编辑  收藏  举报