SDOI2015题解与感想

链接:https://loj.ac/problems/search?keyword=SDOI2015

其实也没什么感想。。
最大的感想就是质量没有SDOI2018的高
忽然意识到SDOI2018的总结还没有写。。那么就先咕着吧
大部分题比较简单,但也有还行的。。
做起来也比较顺利。。
就这样吧
下文的题目顺序按我觉得难度递增

「SDOI2015」寻宝游戏

一棵树给一些点集,要距离总和
以前见过了。。被PP上课玩出来
就按dfs搞搞就好了,set维护一下前驱后继即可

「SDOI2015」星际战争

二分一下答案
用网络流验证即可
可以直接跑实数,也可以把权* 1 0 6 10^6 106,跑整数
我觉得用列不等式,跑线性规划的判解也行

「SDOI2015」排序

分析一下,我们把操作大的往前移,方案一定是存在的
更进一步地,可以看成顺序无关,只要按一定顺序考虑每一个方案,最后乘一个阶乘就好了
然后从小到大考虑每一个操作,我们可以知道,在决策了前 i i i个操作的时候,合法的条件是分组是连续的
于是猜想合法的不多,直接爆搜
就按这个剪枝
发现拿了80分
考虑判的时候太慢了,可以在暴力枚举交换点的时候先判掉一些,然后就可以过了

「SDOI2015」约数个数和

在SDOI2018有超级加强版。。
只要知道那个结论就是傻逼题了。。

「SDOI2015」道路修建

本来想按堵塞的交通来做的。。
然后想了一下发现情况有点多,就丢了
想了一下
每一列一定要选一个,但是似乎没什么用
再考虑一下分成左右两个能不能合并
我们现在要考虑的,是两条连接两列的两条边,也就是a和b
然后小的一个一定要选
大的一个,选了一定会出现环,我们要在环上选择最小的
因为左右两边一开始都是合法的
因此这条边的意义在于把其中一边的上下两个点连通
于是我们只需要找到,在未连接之前,两侧的连接上下两点的最短路径就可以了
显然只需要维护第一条树边就好了,因为资瓷合并,因此左边和右边都要
不难发现这个环的形状是横…横竖横…横
横的最小最小值可以维护,竖的话暴力询问就好了
查询最小我另外开了一个线段树。。
之后翻了一下题解,发现并没有这个必要,只需要为维护左右边界的时候顺便维护就好了
如果按我的SB方法,写个线段树查询就是log^2的,正常的人就是log的
A了之后仔细翻了一下,发现还是有按堵塞的交通来做的。。
具体看这里
有点麻烦我就不写了。。感觉这种做法情况一多容易漏。。

「SDOI2015」序列统计

唯一不会的题。。
主要是姿势没有想到
乘法卷积可以换位原根变成加法卷积很妙
本来想过变加法。。但是发现我的姿势里变加法只有取对数。。发现并没有什么用
然后就没什么了。。
有关原根的还是经常想不到。。以后尽量往这方面想想
然后循环卷积其实就是卷积完以后加回去,记得清0

你可能感兴趣的:(高二生活)