不嘻嘻,上了 8 8 个小时的课。

分类

Easy \color{Green}{Easy} :一眼题。

Median \color{Blue}{Median} :经过思考可以做出来。

Hard \color{Yellow}{Hard} :看完题解立马理解。

Insane \color{Orange}{Insane} :看完题解经过一段时间的思考能够理解。

Supreme \color{Red}{Supreme} :看完题解经过长久思考才理解。

P3960 [NOIP 2017 提高组] 列队 Easy \color{Green}{Easy}

还是 Splay 模版。

AT_arc092_d [ARC092F] Two Faced Edges Hard \color{Yellow}{Hard}

首先那两个条件是显然的,难点在于判断第二个条件。

转换为求 uv u \rightarrow v 的路径中 uv u \rightarrow v 是否是必经点,用两遍 dfs 即可。

CF1361E James and the Chase Hard \color{Yellow}{Hard}

还是随机题,我太菜了。

首先随机找到一个好点(你没听错),通过这个好点来判断其它点是否是好点。

首先若一个子树有 2 \geq 2 个越过根的返祖边的话,那肯定是 gg gg 的,否则这个边连向的点必须也是好点,否则 gg gg

随便均摊一下就变成 O(100(n+m)) O(100(n + m)) 了。