摘要: 非常巧妙的一场模拟赛,比较偏向于 Atcoder 的风格,考场上做出了 A 、C 两题。 A. 礼物购买 排完序后一个个礼物地枚举时间复杂度是$\Theta(nm)\(的,不能接受。但是注意到,若当前商品买得起,那么它一定能够使答案缩小至少一半。因此我们用二分法找到下一个能买得起的商品,买完再二分下 阅读全文
posted @ 2020-10-25 14:16 Linshey 阅读(191) 评论(0) 推荐(0) 编辑
摘要: 题面:#10471. 「2020-10-02 提高模拟赛」灌溉 (water) 假设只有一组询问,我们可以用二分求解:二分最大距离是多少,然后找到深度最大的结点,并且把它的$k$倍祖先的一整子树删掉,看一下一共要删几次,显然满足单调性。 现在要询问所有取值。上面二分的过程启发我们可以反过来,通过枚举 阅读全文
posted @ 2020-10-25 13:51 Linshey 阅读(65) 评论(0) 推荐(0) 编辑
摘要: 题面:#10470. 「2020-10-02 提高模拟赛」流水线 (line) 题目中的那么多区间的条件让人感觉极其难以维护,而且贪心的做法感觉大多都能 hack 掉,因此考虑寻找一些性质,然后再设计 DP 状态。 设两端区间$Q_i$和$Q_j$满足$Q_i \subseteq Q_j$,那么显然 阅读全文
posted @ 2020-10-25 13:37 Linshey 阅读(60) 评论(0) 推荐(0) 编辑