Live2D

2022/11/07 考试题解

T2 【NOIP Round #3】抓内鬼

link

Solution

考试的时候被诈骗了,写了一个不知道什么玩意的东西。

先判一下 \(1\)\(n\) 联通的情况。我们假设 \(1\) 为 P,\(n\) 为 U,那么我们可以发现我们要么可以把 \(1\) 以及它所连的所有点都变为 P,要么可以把 \(n\) 以及它所连的所有点都变为 U。

然后就 \(\Theta(n)\) 做完了,3s 属于神秘操作。

T4 【NOIP Round #3】数圈圈

link

Solution

我们考虑分治,然后每一次把长边划分成一半,然后考虑下图:

可以发现我们需要枚举短边上的两个点并计算方案,那么这也解释了为什么每一次把长边划分。

然后计算方案的话其实可以直接扫描线+BIT的,不过似乎有线性的方法,但是我比较懒,就翘了吧。这样做复杂度是 \(\Theta(nm\log^2 (nm))\) 的。

可以发现问题的主要思考点还是在于分治处理这种问题。一旦想到了该问题也就迎刃而解了。

posted @ 2022-11-07 16:24  Dark_Romance  阅读(29)  评论(0编辑  收藏  举报