摘要:
就像位运算要从大到小贪心考虑一样,字典序也必须从第一位到末位逐位贪心考虑! 考虑按位枚举,再对于限制条件分类,对于一个点想要为 0,显然跟它所限制的都要能够满足,且不能影响之前的决策!保证无后效性捏。 赛时冲太久 2-SAT 了,但其实这题分析出来一条限制边 2 端至少要有 1 个 1,然后再从前到 阅读全文
摘要:
https://codeforces.com/contest/1612 VP 过了 A~E,感觉海星。 F,G 这几天补。 ~~主要是 luogu 有翻译拯救了英语不好的我。~~ A 一眼 $x+y\equiv 0\pmod{2}$,否则无解。那么显然距离应该是 $(x+y)/2$,考虑别超过 $\ 阅读全文
摘要:
刚刚学完 whk 时无聊看了下提交记录,发现这道富有启发意义的题目。 首先,注意到这实际上就是个序列的 《括号树》,拿来做就行,$f_i$ 为以 $i$ 结尾的合法括号串数量,$f_i=f_{L_i-1}+1$,然后再做一遍前缀和,相减求出以区间 $[x,y]$ 为结尾的数量,但是我们发现会算重,具 阅读全文
摘要:
不会。。。 https://atcoder.jp/contests/agc058 A 考虑奇偶位,枚举偶位然后将相邻三个的最大值挪过来即可。 B 考虑操作不大好搞。从合法答案序列入手 每个数只染一个连续段:因为每个数都是从中间向两边扩展的。假如染两个,若中间存在大于它的,显然不合法。若存在大于它的, 阅读全文
摘要:
括号序 进加一次,出加一次,显然最后得到的序列只有 $2n$ 个点。 void dfs(int x) { in[x]=++tot; for(y) dfs(y); out[x]=++tot; } 显然我们希求将树上路径表示为区间,然后用莫队抑或是其它数据结构维护。 对于 $y\in T_x$ 的情况就 阅读全文
摘要:
膜拜 alex_wei 就对了 无论是对于无向图还是有向图而言,必要性都是显然的。考虑最终欧拉回路的形态,每次进入一个点,都要从该点走出去,所以出边和入边必须两两抵消。对于起始点,它一开始走出去的边和最后走回它的边同样抵消了,所以有向图存在欧拉回路必须满足每个点出度和入度相等。同理可证无向图每个点的 阅读全文
摘要:
dfs 树!前向边!返祖边!横叉边! 我认为最关键的就是返祖边了! alex_wei 的 blog 我觉得讲得很好! 求边双的时候为啥去掉割边就是对的呢? 边双的定义就是没有割边的图。。 还有一个就是点双回溯的正确性。但我觉得我 alex_wei 讲的更好! 静候 alex_wei 恢复博客! 阅读全文
摘要:
https://codeforces.com/contest/1494 A,B 暴力 C 拆成正负的思路很显然。我们仅分析正的情况,因为负的取绝对值后等效于正。我们考虑每次都是推 1,考虑可以钦定推完后 1 的位置。又考虑到没有被推到的后缀的初始贡献要加上,这与被推到的最远点有关。 于是自然 2 种 阅读全文
摘要:
https://codeforces.com/contest/1713/problem/E 写了个随机合并的并查集,,,没过。。。。。。 反手按秩!!!!!!!!! #include <bits/stdc++.h> //#define int long long #define ID(i,j) (( 阅读全文