03 2020 档案
摘要:"Link" 显然可以将条件拆成相邻边之间的方向要相同/不同。考虑二分答案 $K$ 。 我们硬点当前节点 $\text{x}$ 到父亲 $\text{fa}$ 的边的方向是 $\text{x}\to \text{fa}$。设 $f[x]$ 为最小的合法的填在 $x$ 上的数,当然,如果边反向的话最大
阅读全文
摘要:手玩一下二维的情况发现很像mex,冷静分析一下这个过程,我们将 $0$ 设置为要选择的点,那么贪心即为观察后继节点有没有 $0$,没有则是 $0$,有的话就是 $1$。 那么显然可以发现这玩意本质上就是一个博弈,多维的情况就是单维的情况的并,并且这个博弈可以用 $\text{sg函数}$ 表示。 那
阅读全文
摘要:~~部分是因为太懒了以及有些题不会~~ "DAY1" "DAY2" "DAY3" "DAY4"
阅读全文
摘要:Day 4 T1 每个颜色连向这个颜色最小连通块内的点,倍增优化建边之后跑tarjan即可。
阅读全文
摘要:Day 3 T1 问题可以变成在树上选若干不相交的链使得权值和最大,这是个简单数据结构维护 $dp$。 cpp include "Anthony.h" include include using namespace std; const int N = 1e5+5; int c[N],d[N]; t
阅读全文
摘要:Day 2 T1 二分图的部分分直接二分可以得到三个点,一个入度一个出度一个颜色相等。 然后你可以询问两次看颜色相等和入度是哪两个(询问答案是1),就能做了。 非二分图每次暴力看能不能加入当前集合,然后再把剩下的点查询边并且对剩下的点递归下去。 容易证明次数是 $3n\log n + 3n + 2n
阅读全文
摘要:Day 1 T1 随便猜个结论就行了。我猜的是将无论如何都成立的分成若干段,每一段一定是前缀贪心最小,后缀贪心最大。
阅读全文

浙公网安备 33010602011771号