NOIP 模拟赛:2024-11-16
全体栽在 T1 ?
T1:
二分一下内存大小然后模拟判断。关键点在于意识到 "解码" 和 "播放" 这两种事件是分开的。用一个 while 循环,每次循环从 "完成某帧的解码"、"开始某帧的解码"、"播放某帧"、"删除某帧" 之间选时间最早的时间执行。
T2:
板题,并查集额外记录个 vector 然后启发式合并没了。
T3:
关键观察:序列的最小值必选。然后从最小值可以断环为链,二分套一个线段树优化 DP 板子。
复杂度 \(O(n\log^2n)\)
T4:
维护一个整体队列的平衡树,再对每个班级维护一颗平衡树。在班级的平衡树结点记录在大平衡树里的结点编号。
每次插入就在班级的平衡树里二分一下即可。
复杂度 \(O(n\log^2n)\),因为每次二分判断需要在大平衡树里查 \(rank\)。