第二弹
[SCOI2009]生日快乐
搜索。递归划分问题。
[SCOI2009]游戏
记忆化搜索。枚举素因子,DP。
[SCOI2009]windy数
数位DP,分块统计。
[SCOI2009]最长距离
构图最短路。需要移动的边连权值1,求最短路和T比较。
[SCOI2009]粉刷匠
DP
[SCOI2009]迷路
拆边,矩阵乘法。
[Scoi2010]幸运数字
暴力容斥原理。
[Scoi2010]游戏
构图,二分图最大匹配。(贪心是错误的,但有80分。。。)
[Scoi2010]股票交易
DP,单调队列。分离状态转移方程中的变量和常量,发现单调性。(也可以考虑费用流构图,但要优化)
[Scoi2010]字符串
Catalan数的经典应用。
[Scoi2010]传送带
两次三分。明显发现距离和位置呈二次关系,凸性函数三分即可。至于证明我也不会,可以写个程序验证一下。
[Scoi2011]糖果
差分约束系统。
[Scoi2011]地板
插头DP。这题没写,原理看懂了但是一直写不明白,蒻爆了。。。
[SCOI2011]棘手的操作
可以用启发式合并的Splay+并差集(STL set应该也可以)。官方解法是离线操作,先全部连起来,然后DFS序处理就出现了区间,线段树就可以。(我感觉好神奇啊。。。
[SCOI2012]滑雪与时间胶囊
SCC+MST。注意这里是有向边,但是不能最小树形图,但是利用题目的特殊性质,必然从高处向低处走,那么先按高度再按长度排序就可以MST了。
[SCOI2012]喵星球上的点名
后缀数组。这题是多模板多目标的匹配,而且没要求在线,所以理论上用AC自动机和后缀数组都行,但是由于这题的字符集数目太大,AC自动机要面临空间问题(因为要建立Trie数),所以用后缀数组写比较合适。(其实AC自动机也可以做,用map和vector离散一下儿子节点,或者动态分配,时间上理论上会较慢,但这题的特点本身限制了数据,所以不会很卡时)
[SCOI2012]奇怪的游戏
最大流。很好的建模,不是太好想。看了这个题解才明白(我觉得这个思路有点像混合图的欧拉回路,都是一种调整的思想)
[SCOI2012]Blinker的仰慕者
数位分解。然后很巧妙的地方就在于K不会存在大于7的质因数,因为显然K是很多个0~9的数乘起来的。所以就可以DP,加4个维度表示2,3,5,7的次数是多少。最后按数位分解统计。