JOI Open 中一些没有题解的题的简要题解

虽然好像没啥人做,但还是先放着,相信总是有人来看的。

LOJ2414「JOI Open 2017」高尔夫

容易说明最终路径一定只有以下两种情况:

  • 横纵坐标有一维与起终点相同
  • 是一个矩形四条边的延长线之一

然后直接线段树优化建图跑 bfs 即可,总复杂度 \(O(n\log n)\)

LOJ3362「JOI Open 2020」黑白点

经过一些观察,对于一条边,他把整个圆分成了两段弧,那么与这条边相交的边至多只有 min 两段弧长度 条。此时猜测最优构造中这个上界可以达到。设黑点坐标分别为 \(a_i\),白点坐标为 \(b_i\),那么最终匹配方案一定是 \(a_i\)\(b_{(i+k)\bmod k}\) 连边。

然后随便加点什么优化就好了。

LOJ3363「JOI Open 2020」发电站

\(f_u\) 为只考虑 \(u\) 子树内的节点的答案。转移的时候若 \(u\) 子树内有被选中的点,那么 \(u\) 就会被烧坏,因为如果只有一个子树被选,这种情况要么会在这个子树里被算到,要么可以在上面再选一个点,所以这个贪心是对的。

然后统计答案是简单的。

LOJ3522「JOI Open 2021」怪兽游戏

发现如果把题目中的比较方式丢到 sort 里面会得到若干段递减的总体上升的序列,且每一段都不长,即 3 2 1 5 4 8 7 6 这样。

那么先直接做一次归并排序,然后对得到的结果略加修改即可。

LOJ3539「JOI Open 2018」猫或狗

看上去暴力动态 dp 就好了。

LOJ3540「JOI Open 2018」山体滑坡

先观察一下询问的本质是什么,是询问一个点的前缀,一个时间的前缀的连通块个数。

考虑回滚莫队,对时间维度回滚,然后用可撤销并查集维护边集,这样总复杂度为 \(O(n\sqrt n \log n)\)。你看上去这很慢,但我只跑了时限的 \(1/5\)

LOJ3541「JOI Open 2018」木琴

询问所有的 \((i,i+1)\)\((i,i+2)\),然后可以判断 \((a_i-a_{i-1})(a_{i-1}-a_{i-2})\) 的正负性。就做完了。

posted @ 2022-01-14 20:18  wasa855  阅读(541)  评论(0编辑  收藏  举报