2022-12-19 #16 我们执意追寻 会否燃为灰烬
——霾《妄想Reality》
「少女戴上面具继续逃亡」
「饥饿与瘟疫如影随形」
「恐惧却不能把握她的命运」
「死亡即是归宿」
「她已经看清」
今天有点摆,现在才发博客呜呜。
话说都是哪些老哥在看我博客呀,能不能评论一下,让我看看!!
80 Ptz2022 Day2 ZJU Contest 1 E Ternary Search
联考考过,没补,我是摆怪。
先考虑一个经典问题,把序列变成递增序列,交换次数即逆序对数。
从小到大选择数字,并将数字摆在序列左、右侧,那么无论中间顺序如何,放左、右侧的顺序是固定的。(因此,加入过程没有后效性,我们可以直接贪心)
现在考虑如何 pushback 一个数,这个数一定摆在右侧。它会对之前加入了、比它大且摆在右侧的数有影响。
那么我们每个数都会在一开始加入右侧,在某个时间段切换到左侧,这个时间很好算,令有 \(x\) 个在它前面,比他小的数,那么它后面第 \(x\) 个比它小的数加入后它就会切换到左侧,线段树二分即可。
复杂度 \(O(n\log n)\)。
81 Ptz2022 Day2 ZJU Contest 1 L Maximum Range
比较简单的题。
显然一个边双内的才能同时出现,我们选出这两条边,跑个网络流就好了。
一个小技巧:图中的边建边的时候把边的正向、反向边流量上界都设为 \(1\)。
顺带复习一个小知识:神秘图论技巧。
找一条 \((u,v)\),经过 \(e\) 的路径。
以 \(u\) 为根生成一棵 dfs 树,显然可以让 \(e\) 成为一条树边。若树上路径包括 \(e\) 显然平凡,否则我们要找到一个简单环与路径有交,并让简单环包括 \(e\)。
dfs 树上的简单环一定可以通过若干条的返祖边对应简单环异或而成,我们不妨考察 \(e\) 对应子树(不包含根的那个,令根为 \(x\))的最浅返祖边 \((p,q)\),然后找到 \(q\) 向 \(p\) 走一步到的结点 \(r\),继续跳 \(r\) 子树最浅返祖边直到 \(r\) 是 \(v\) 的严格祖先。(从 \(q\) 走到 \(r\) 是为了让环有交)
归纳可证这是一个简单环,也容易发现异或后一定是简单路径。
82 Ptz2022 Day3 Qingyu, flower and their friends’ Contest K Kitten’s Computer
其实我也不是很明白,下面纯属夹杂个人理解的官方 sol 翻译。
我们先设计出一个加法器。
考察 \(G=a\and b,P=a\oplus b\),并使用 \(O(1)\) 次并行操作(如果要保留成一个 bit 就要 \(3\) 次,但仅关心最后一位可能也等价?这样只要 \(2\) 次)对 \(G,P\) 进行拆位。
考察 \(Q=(a+b)\oplus P\),事实上它就是 \(G\) 右移后与 \(P\) 得出的进位,而这个东西是可以列出式子:
使用倍增,令 \(b\) 从 \(0\) 枚举到 \(5\),每次令(那么 \(P_i\) 就代表 \([i-2^b+1,i]\) 的 \(P\) 的按位与,\(G\) 可以类似理解)
这个东西就可以并行了,次数大概是 \(12\) 次。
然后是乘法器。
算了,明天再做。
83 CF1774G Segment Covering
明天写。
loj#6465. 二平方和定理:鸽
今天看了一下 DAG 剖分,发现 DAG 剖分能做不少题,还特别无脑!
uoj752 uoj697 uoj577 CF1098F。

浙公网安备 33010602011771号