随笔分类 - OJ -- BZOJ
摘要:【BZOJ1093】[ZJOI2007]最大半联通子图(Tarjan,动态规划) 题面 "BZOJ" "洛谷" 洛谷的讨论里面有一个好看得多的题面 题解 显然强连通分量对于题目是没有任何影响的,直接缩点就好了。 那么接下来剩下的是一个$DAG$,既然任意两点之间都有一条路径连接,在$DAG$上的体现
阅读全文
摘要:【BZOJ1090】[SCOI2003]字符串折叠(动态规划) 题面 "BZOJ" "洛谷" 题解 区间$dp$。设$f[i][j]$表示压缩$[i,j]$区间的最小长度。显然可以枚举端点转移。再考虑这一段区间能否压缩,暴力枚举一个压缩后的串长,判断是否全部相等即可。判相等不如用哈希,方便得多。 c
阅读全文
摘要:【BZOJ1089】[SCOI2003]严格n元树(高精度,动态规划) 题面 "BZOJ" "洛谷" 题解 设$f[i]$表示深度为$i$的$n$元树个数。然后我们每次加入一个根节点,然后枚举它的子树的深度乘起来就好了。但是这样不好做,我们设$f[i]$表示深度至多为$i$的$n$元树个数,那么显然
阅读全文
摘要:【BZOJ1083】[SCOI2005]繁忙的都市(最小生成树) 题面 "BZOJ" "洛谷" 题解 模板题。 cpp include include include using namespace std; define MAX 350 define MAXL 10100 inline int r
阅读全文
摘要:【BZOJ1082】[SCOI2005]栅栏(搜索) 题面 "BZOJ" "洛谷" 题解 随便写个爆搜,洛谷上就$80$分了。先放爆搜代码:
阅读全文
摘要:【BZOJ1081】[SCOI2005]超级格雷码(搜索) 题面 "BZOJ" "洛谷" 题解 找个规律吧,自己随便手玩一下,就按照正常的顺序枚举一下,发现分奇偶位考虑正序还是逆序就好了。
阅读全文
摘要:【BZOJ1078】[SCOI2008]斜堆(性质题) 题面 "BZOJ" "洛谷" 题解 考虑一下这道题目的性质吧。思考一下最后插入进来的数是什么样子的。首先因为它是最后插入进来的,所以一定是比某个数小,然后把这个数作为一个根,原来的树根直接接到了左儿子上面,因此它没有右儿子。然而显然可以同时有多
阅读全文
摘要:【BZOJ1077】天平(差分约束) 题面 "BZOJ" "洛谷" 题解 利用矩阵可以很容易得到两个点之间的最大差和最小差,再利用这个信息判断即可。差分约束用$Floyd$计算。时间复杂度$O(n^3)$。
阅读全文
摘要:【BZOJ1071】[SCOI2007]组队(神仙题) 题面 "BZOJ" "洛谷" 题解 首先把式子整理一下,也就是$A h+B v\le C+A minH+B minV$ 我们正常能够想到的做法是钦定一个$minH$然后怎么暴力。然而发现并不行,因为$minV$就不单调了。那么如果要暴力只能同时
阅读全文
摘要:【BZOJ1862】[ZJOI2006]游戏排名系统 (Splay) 题面 "BZOJ" "洛谷" 题解 "双倍经验题"
阅读全文
摘要:【BZOJ1056】[HAOI2008]排名系统(Splay) 题面 "BZOJ" "洛谷" 题解 $Splay$随便维护一下就好了,至于名字什么的,我懒得手写哈希表了,直接哈希之后拿$map$压。 cpp include include include include include includ
阅读全文
摘要:【BZOJ1055】[HAOI2008]玩具取名(动态规划) 题面 "BZOJ" "洛谷" 题解 裸的区间$dp$,设$f[i][j][W/I/N/G]$表示区间$[i,j]$能否由某个字母替换过来,转移的时候枚举用哪一个变换即可。 cpp include include include inclu
阅读全文
摘要:【BZOJ1053】[HAOI2007]反素数(搜索) 题面 "BZOJ" "洛谷" 题解 大力猜一下用不了几个质因子,那么随便爆搜一下就好了。
阅读全文
摘要:【BZOJ1047】[HAOI2007]理想的正方形(单调队列,动态规划) 题面 "BZOJ" "洛谷" 题解 直接一个单调队列维护一下没给点和它前面的$n$个位置的最大值,再用一次单调队列维护连续$n$列的,每个数和前面$n$个数的最大值,最小值同理,就做完了。 cpp include inclu
阅读全文
摘要:【BZOJ1044】[HAOI2008]木棍分割(动态规划,贪心) 题面 "BZOJ" "洛谷" 题解 第一问随便二分一下就好了,贪心$check$正确性显然。 第二问随便前缀和+单调队列优化一下$dp$就完了。 cpp include include using namespace std; de
阅读全文
摘要:【BZOJ1037】[ZJOI2008]生日聚会(动态规划) 题面 "BZOJ" "洛谷" 题解 假设前面的都合法,但是在加完当前的最后一个人之后变得不合法了,那么意味着一定有着一个后缀不合法。把男生看成$1$,女生看成$ 1$,也就是不存在一个后缀和大于$K$或者一个后缀和小于$ K$。而在最后面
阅读全文
摘要:【BZOJ1032】[JSOI2007]祖玛(动态规划) 题面 "BZOJ" "洛谷" 题解 听说是道假题,假的原因是因为出题人可能没有考虑到祖玛的骚套路,比如可以先打几个球进去再一波消掉。也就是出题人基本默认了打一个球就至少要消去一段。 我们就这么做,那么就是个区间$dp$模板题了。 cpp in
阅读全文
摘要:【BZOJ1028】[JSOI2007]麻将(贪心) 题面 "BZOJ" "洛谷" 题解 ~~感觉好久没打过麻将了,似乎都快不会打了。~~ 这个数据范围看着就觉得是$O(n^2m)$。 那么就枚举听哪张牌,然后枚举哪张是一对牌 考虑如何$check$剩下的牌是否能够构成顺子或者刻子(这叫法好别扭啊)
阅读全文
摘要:【BZOJ2084】[Poi2010]Antisymmetry(manarcher) 题面 "BZOJ" "洛谷" 题解 一眼马拉车吧。。。明显就是在回文串的基础上随便改了改。 似乎还可以魔改回文树,然而我这智商可能魔改不出来。 稍微注意一下因为长度只能是偶数,所以不是加进来的字符的位置是不能用来更
阅读全文
摘要:【BZOJ1025】[SCOI2009]游戏(动态规划) 题面 "BZOJ" "洛谷" 题解 显然就是一个个的置换,那么所谓的行数就是所有循环的大小的$lcm+1$。 问题等价于把$n$拆分成若干个数,他们的$lcm$有多少种不同的情况。那么显然还可以变成有多少个数的$\sum_{i}p_i^{a_
阅读全文

浙公网安备 33010602011771号