bzoj一句话题解

发现好多人都在搞这个。。。本人也想来试试(Solved刚到70就搞这个靠不靠谱啊喂)。会更新的。嗯。

1000-1029

1000 A+B problem

(这个还需要一句话吗?).

1001 狼抓兔子

平面图最小割转化为最短路。

1002 轮状病毒

矩阵树定理加一个手推的递推式就行了(注:在原行列式上递推有点麻烦,可以先递推行列式的一部分)。

1003 物流运输

枚举区间floyd求最短路,然后\(O(n^2)\)dp。。。

1004 Cards

直接上Burnside定理。

1005 明明的烦恼

无根树prufer序列+一点数学推导。

1006 神奇的国度

弦图的染色数=最大团,按完美消除序列倒序染色。

1008 越狱

容斥(减法计数原理?)+两个快速幂(那么简单的题还能上省选?)。

1009 GT考试

经典KMP递推。

1010 玩具装箱

据说标算是单调队列,但由于决策单调递增,然后搞一个枚举就能过(数据太水,此做法只要有许多1就能卡)。

1011 遥远的行星

利用误差巧妙将分母统一然后计算(话说这不符合物理规律吧喂)。

1012 最大数

单调队列+二分查找。

1013 球形空间产生器

列方程组,高斯消元。

1015 星球大战

倒着处理,并查集。

1021 循环的债务

利用总和不变的性质和每个币种只有6种情况来巧妙的减少记忆化搜索(或dp)枚举量。

1022 小约翰的游戏

SJ定理(http://www.cnblogs.com/y-clever/p/6667592.html), 这个不算一句话。

1024 生日快乐

暴搜(加记忆化之后可以在bzoj上跑0ms)。。。

1025 游戏

数学推导+简单的分组背包。

1026 windy数

简单的数位dp。

1028 麻将

枚举听牌,再枚举对子,最后顺着扫一遍,顺子和刻子优先选后者。

1030-1299

1030 文本生成器

1009题的加强版,dp放到了AC自动机上。

1031 字符加密

后缀数组裸题,只要把原串复制一份接在后面就好了。

1037 生日聚会

dp裸题,按男孩女孩数和所有后缀中男女孩数量的差的最大最小值dp。

1038 瞭望塔

可以发现塔顶一定在每相邻两个顶点的直线上方,所以求一遍半平面交,枚举所有已知点和所有半平面交顶点的横坐标即可。

1041 圆上的整点

利用平方差公式和gcd减少枚举量。

1042 硬币购物

dp预处理+容斥原理。

1045 糖果传递

中位数(我会告诉你这是蓝书例题3吗?)。

1047 理想的正方形

开b个单调队列维护各列在当前上下界的最大(最小)值,再开一个单调队列扫描一遍即可。

1048 分割矩阵

暴力dp,因为标准差\(\sigma=\sqrt{\frac{1}{n}\sum_i x_i^2 - \bar{x}^2}\),dp最小平方差。

1057 棋盘制作

优化DP(据说叫做扫描法)。

1059 矩阵游戏

因为同行同列的关系始终不变,只需要找出n个点不同行列,也即二分图完美匹配(行列为点,黑格子为边)。

1061 志愿者招募

通过类似线性规划的想法将题目转化为网络流。

1070 修车

通过把每个技术工拆成倒数第一个,倒数第二个…倒数第n个,然后就可以二分图最大匹配了。

1078 斜堆

找规律(提示:斜堆的左右儿子节点数之差的绝对值几乎不变)。。。

1088 扫雷

这题放到普及组也是送分题啊。。。

1089 严格n元树

考虑深不超过d的树数为\(f_d=f_{d-1}^n+1\),答案即为\(f_d-f_{d-1}\),python裸题。

1090 字符串折叠

\(O(n^2)\)dp。

1192 鬼谷子的钱袋

\(\lfloor log_2(m) \rfloor+1\),即m的二进制位数(不是\(1,2,4,...\)!!!!!是\(\lceil \frac{m}2 \rceil, \lceil \frac{m}4 \rceil,...\))。

1228 E&D

观察及证明可知\(SG(i, j) = log_2\,lowbit[(i-1) | (j-1)]\)

1800 - 3999

1875 HH去散步

矩阵快速幂。要以边建矩阵。

1876 SuperGCD

高精GCD。各种优化(python裸题=_=)。

1922 大陆争霸

最短路,反正机器人有无限个,把Dijkstra改一改就能过。

1923 外星千足虫

异或方程组,bitset+高斯消元。

2002 弹飞绵羊

LCT入门题。

2427 软件安装

树形背包,甚至不需要优化(好像也不太能优化)。

3944 Sum

“裸”杜教筛(http://www.cnblogs.com/y-clever/p/6514901.html), 这个不算一句话。

4500 - 4799

4513 储能表

四维(有三维是0/1)数位DP。

4514 数字配对

由质因数指数之和的奇偶性可发现它是二分图(但程序中直接二染色就行),然后最小费用任意流(费用为正就停止)。

4516 生成魔咒

后缀自动机裸题。每个字符的贡献是(添加后)len[last] - len[pre[last]]。

4517 排列计数

错排数×组合数。

4518 征途

DP,斜率优化(\(\sigma^2 = \bar{x^2} - \bar{x}^2\),方差转化为平方和)。

4600 硬币游戏

可以发现硬币独立且翻法不多,暴力算SG函数就行了。

4784 仙人掌

先tarjan判断是不是仙人掌并把环上的边去掉,然后有\(ans = \prod_{x \in V} H_{deg_x+1}\),其中\(H_0=H_1=1, H_n = (n-1)H_{n-2} + H_{n-1}\)为n个点两两配对(可以有不配对的)方案数,可以暴力算;注意:这题tarjan要改成迭代,不然会爆栈,而且初始化不要memset(提示:vis不要只存0/1)。//这都3句了吧→_→

posted @ 2017-04-06 21:16  _rqy  阅读(979)  评论(1编辑  收藏  举报