不懂,不会 D,而且写不动数据结构了,老年人。

中文题面就不写题面了。

[A 减肥计划]

solution

做法:注意到除非在遇到第一个最大数之前就结束,不然一定是第一个最大数是答案,所以模拟遇到最大数即可。时间复杂度

[B 翻新道路 II]

solution

做法:肯定想着虚树那一套方法,考虑用 set 维护前驱后继,然后可以发现除了最外面的一圈以外,其他数都是被覆盖过两次,根一次都没有,所以加上最外面一圈再除以二加上根即可。时间复杂度

[C 测量学]

solution

做法:可以发现答案是 ,讨论一下 大小即可发现单调性。时间复杂度

[D Devil May Cry]

solution

做法:

[E 睡觉]

solution

做法:发现只用判断是否可行,于是直接暴力算算前几次即可。时间复杂度 ,算轮数就很麻烦了。

[F 位运算谜题]

solution

做法:暴力 ,然后最大的一定是 ,注意到 等价于正常加,所以能快速算出 ,再检验是否正确即可。

[G 排队打卡]

solution

做法:暴力枚举答案即可。

[H 提瓦特之旅]

solution

做法:简单的最短路裸题。

[I 宠物对战]

solution

做法:注意到询问串长度很小,枚举区间看看这个区间是不是有 ,这些判断可以 树线性判断,然后简单 即可,时间复杂度

[J 瑞士轮]

solution

做法:利用期望的线性性,只有算每个数 的概率即可。可以发现只有相邻的四个数互相才有影响,暴力枚举即可。

[K 区间和]

solution

做法:区间和容易写成差分,二分答案后,就只是要判断 多少个小于 。发现值域很小,直接 即可。注意到每个数都大于等于 ,所以负的都无用, 可以提前预处理。时间复杂度

[L 彩色的树]

solution

做法:线段树合并裸题, 的限制只要每个节点暴力提前跳到 祖先即可。时间复杂度