2022/11/07 考试题解
T2 【NOIP Round #3】抓内鬼
Solution
考试的时候被诈骗了,写了一个不知道什么玩意的东西。
先判一下 \(1\) 与 \(n\) 联通的情况。我们假设 \(1\) 为 P,\(n\) 为 U,那么我们可以发现我们要么可以把 \(1\) 以及它所连的所有点都变为 P,要么可以把 \(n\) 以及它所连的所有点都变为 U。
然后就 \(\Theta(n)\) 做完了,3s 属于神秘操作。
T4 【NOIP Round #3】数圈圈
Solution
我们考虑分治,然后每一次把长边划分成一半,然后考虑下图:
可以发现我们需要枚举短边上的两个点并计算方案,那么这也解释了为什么每一次把长边划分。
然后计算方案的话其实可以直接扫描线+BIT的,不过似乎有线性的方法,但是我比较懒,就翘了吧。这样做复杂度是 \(\Theta(nm\log^2 (nm))\) 的。
可以发现问题的主要思考点还是在于分治处理这种问题。一旦想到了该问题也就迎刃而解了。