刚做完 T1 以为怎的,hb 天天给这些高一高二做这些水题?然后才发现后面都是神题(
ABC127F - Absolute Minima
刚看完题还想着用 geogebra 放几个 (a) 上去看函数长啥样。然后画完才发现脑抽了……这不就是昨天做的那个 APIO2015 那题吗?
发现 (b) 的影响单独算,任意时刻设 (a) 的序列为 (A),那么 (f(i)=sum |x-A_i|),那不就是取 (A) 的中位数吗?两个 set
维护一下就好了。
上帝不要惩罚我做水题/kk
CF201D - Brand New Problem
题解。
CF93C - Azembler
这题我一年前做过,然而现在还记得……这是个远古题,不知道现在 0202 年还考不考 IDDFS 了……
注意到对于任意 (n),都可以找到 (7) 步的方法:每次 ( imes2),看当前二进制位考虑要不要 (+1),每次存到新盘里。也就是说答案很小。
还发现,每次一定是要存到新盘里的。于是我们可以爆搜,这个求最小步数当然 BFS 了,一次可能伸出去最多 (256) 条边,但是这个非常不满,而且最大步数也不一定有 (7),于是很有希望。
但是 BFS 唯一的缺陷在于不能方便的记录状态。于是这里有一个迭代加深(IDDFS)的小 trick:从小到大枚举答案,然后 DFS,过程中限制一下最大深度,就是伸到当前答案这么深就不允许往下了。这样就完美解决了状态不方便记录的问题,而且不难证明这和理想 BFS 的复杂度是一样的,因为复杂度随深度指数增长,前面那些加起来还没有最后一次多,故可忽略。
code(真就看心情给代码呗)
CF986E - Prince's Problem
hot tea,题解。