摘要: 欢迎访问~原文出处——博客园-zhouzhendong 去博客园看该题解 题目传送门 - BZOJ1103 题意概括 一棵树上,一开始所有的边权值为1,我们要支持两种操作: 1. 修改某一条边的权值为0 2. 询问根节点到某一节点的路径权值和 题解 前置技能 - dfs序相关 然后差不多你就会了。 阅读全文
posted @ 2017-08-17 16:59 zzd233 阅读(236) 评论(0) 推荐(0) 编辑
摘要: 欢迎访问~原文出处——博客园-zhouzhendong 去博客园看该题解 题目传送门 - BZOJ1179 题意概括 有一个有向图,每一个节点有一个权值,其中有一些结束点。 现在,你要从S出发,到达任意一个结束点,使得经过的节点的权值和最大(可以重复经过某一个节点,但是权值只记入一次)。 题解 小码 阅读全文
posted @ 2017-08-17 16:18 zzd233 阅读(262) 评论(0) 推荐(0) 编辑
摘要: 欢迎访问~原文出处——博客园-zhouzhendong 去博客园看该题解 题目传送门 - BZOJ1191 题目概括 有m个题目,有n个解决方案;对于每一个题目,有两种解决方案可用。 每种解决方案只能用一次,问最多可以通过最前面的几题? 题解 几乎是裸的二分图匹配。 每个题目两条边,分别连向所对应的 阅读全文
posted @ 2017-08-17 14:59 zzd233 阅读(258) 评论(0) 推荐(0) 编辑
摘要: 欢迎访问~原文出处——博客园-zhouzhendong 去博客园看该题解 传送门 - BZOJ1195 题意概括 给出一堆串,然后求一个包含这些串的所有串的最短的中的字典序最小的。 题解 先造一个AC自动机,多模匹配嘛。 然后bfs在AC自动机上面走,两维状态,dis[i][j]表示已经走到过的串状 阅读全文
posted @ 2017-08-17 14:10 zzd233 阅读(279) 评论(0) 推荐(0) 编辑
摘要: 欢迎访问~原文出处——博客园-zhouzhendong 去博客园看该题解 题目传送门 - BZOJ1192 题意概括 把一个数m拆成很多数字。 问至少拆成多少个数字,1~m中的所有数字才可以用这些数字的和表示。 题解 这个让我马上想到了有限背包的一种做法。 其实是很像的。 算一算二进制位数就可以了。 阅读全文
posted @ 2017-08-16 22:13 zzd233 阅读(261) 评论(0) 推荐(0) 编辑
摘要: 欢迎访问~原文出处——博客园-zhouzhendong 去博客园看该题解 题目传送门 - BZOJ1073 题意概括 以距离为第一关键字,字典序为第二关键字,在所有的从S到T的路径中,选择不重复经过某一节点的第k条路径。 题解 第k短路模板题。 A*跑一跑就可以了。 UPD(2018-08-24): 阅读全文
posted @ 2017-08-16 21:59 zzd233 阅读(848) 评论(0) 推荐(0) 编辑
摘要: 欢迎访问~原文出处——博客园-zhouzhendong 去博客园看该题解 题目传送门 - BZOJ1067 题意概括 给定n组整数对(Xi,Yi),当Xi<Xj且Yi>=Yj时,如果对于任意的Xk,有Xi<Xk<Xj, Yk严格小于Yj,则称Xi是Xi到Xj中最牛的点。例如4个整数对(2002,49 阅读全文
posted @ 2017-08-16 18:21 zzd233 阅读(312) 评论(0) 推荐(0) 编辑
摘要: 欢迎访问~原文出处——博客园-zhouzhendong 去博客园看该题解 题目传送门 - BZOJ1042 题目概括 硬币购物一共有4种硬币。面值分别为c1,c2,c3,c4。某人去商店买东西,去了tot次。每次带di枚ci硬币,买si的价值的东西。请问每次有多少种付款方法。 题解 一开始没看数据范 阅读全文
posted @ 2017-08-16 18:09 zzd233 阅读(289) 评论(0) 推荐(0) 编辑
摘要: 欢迎访问~原文出处——博客园-zhouzhendong 去博客园看该题解 题目传送门 - BZOJ1079 题目概括 有n个木块排成一行,从左到右依次编号为1~n。你有k种颜色的油漆,其中第i种颜色的油漆足够涂ci个木块。所有油漆刚好足够涂满所有木块,即c1+c2+...+ck=n。相邻两个木块涂相 阅读全文
posted @ 2017-08-16 17:17 zzd233 阅读(244) 评论(0) 推荐(0) 编辑
摘要: 欢迎访问~原文出处——博客园-zhouzhendong 去博客园看该题解 题目传送门 - BZOJ1051 题意概括 有n只牛,有m个羡慕关系。 羡慕关系具有传递性。 如果A羡慕B,B羡慕C,那么我们认为A也羡慕C。 问有多少牛被所有其他牛羡慕。 题解 这次做这题我已经是第三遍了。 USACO经典老 阅读全文
posted @ 2017-08-16 16:37 zzd233 阅读(218) 评论(0) 推荐(0) 编辑
摘要: 欢迎访问~原文出处——博客园-zhouzhendong 去博客园看该题解 题目传送门 - BZOJ1030 题意概括 给出n个模式串,问长度为m的串中有多少个至少含有这n个模式串中的任意一个。 注意,所有的串仅由A~Z 26个大写字母构成。 题解 AC自动机好题。 先构建一个AC自动机。 然后在AC 阅读全文
posted @ 2017-08-16 16:00 zzd233 阅读(217) 评论(0) 推荐(0) 编辑
摘要: 欢迎访问~原文出处——博客园-zhouzhendong 去博客园看该题解 题目传送门 - BZOJ1088 题意概括 扫雷。只有2行。第2行没有雷,第一行有雷。告诉你第二行显示的数组,问有几种摆放方式。 题解 动态规划。 用dp[i][0][0]表示当前位置为0,前一位置为0的方案总数, 用dp[i 阅读全文
posted @ 2017-08-15 22:50 zzd233 阅读(173) 评论(0) 推荐(0) 编辑
摘要: 欢迎访问~原文出处——博客园-zhouzhendong 去博客园看该题解 题目传送门 - BZOJ1068 题目概括 (其实是复制的) 给一个由小写字母组成的字符串,我们可以用一种简单的方法来压缩其中的重复信息。压缩后的字符串除了小写字母外还可以(但不必)包含大写字母R与M,其中M标记重复串的开始, 阅读全文
posted @ 2017-08-15 21:39 zzd233 阅读(398) 评论(0) 推荐(0) 编辑
摘要: 欢迎访问~原文出处——博客园-zhouzhendong 去博客园看该题解 题目传送门 - BZOJ1090 题意概括 折叠的定义如下: 1. 一个字符串可以看成它自身的折叠。记作S 2. X(S)是X(X>1)个S连接在一起的串的折叠。 n<=100.让你求折叠之后的最小长度。 题解 (据说字符串的 阅读全文
posted @ 2017-08-15 18:25 zzd233 阅读(291) 评论(0) 推荐(0) 编辑
摘要: 欢迎访问~原文出处——博客园-zhouzhendong 去博客园看该题解 题目传送门 - POJ1151 题意概括 给出n个矩形,求他们的面积并。 n<=100 题解 数据范围极小。 我们分3种算法逐步优化。 算法1: O(n3) 如果这n个矩形的坐标都是整数,而且比较小,那么我们显然可以用最暴力的 阅读全文
posted @ 2017-08-15 16:18 zzd233 阅读(485) 评论(0) 推荐(0) 编辑
摘要: 欢迎访问~原文出处——博客园-zhouzhendong 去博客园看该题解 题目传送门 - BZOJ1087 题意概括 在n*n的棋盘上面放k个国王,使得他们互相无法攻击,问有多少种摆法。 题解 dp[i][j][x]表示前i行,状态为j,总共放了x个国王的方案总数。 然后简单的转移一下即可。 当然这 阅读全文
posted @ 2017-08-14 21:46 zzd233 阅读(235) 评论(0) 推荐(0) 编辑
摘要: 欢迎访问~原文出处——博客园-zhouzhendong 去博客园看该题解 题目传送门 - BZOJ1059 题意概括 有一个n*n(n<=200)的01矩阵,问你是否可以通过交换整行和整列使得左上角到右下角的对角线上的数字都是1。 题解 我们发现,题目模型可以转换。 其实题目就是叫我们求是否存在一些 阅读全文
posted @ 2017-08-14 20:59 zzd233 阅读(226) 评论(0) 推荐(0) 编辑
摘要: 欢迎访问~原文出处——博客园-zhouzhendong 去博客园看该题解 题目传送门 - BZOJ1084 题意概括 这里有一个n*m的矩阵,请你选出其中k个子矩阵,使得这个k个子矩阵分值之和最大。注意:选出的k个子矩阵不能相互重叠。 输入:第一行为n,m,k(1≤n≤100,1≤m≤2,1≤k≤1 阅读全文
posted @ 2017-08-14 20:31 zzd233 阅读(248) 评论(0) 推荐(0) 编辑
该文被密码保护。 阅读全文
posted @ 2017-08-14 18:55 zzd233 阅读(78) 评论(0) 推荐(0) 编辑
摘要: 欢迎访问~原文出处——博客园-zhouzhendong 去博客园看该题解 题目传送门 - BZOJ1026 题目概括 求区间[A,B]中有多少数满足下面的条件。 条件:该数相邻两位之差不小于2。 题解 简单的数位dp。 一个记忆化dfs就解决了。 dp[i][j]表示剩余i位数,第i+1位为j的wi 阅读全文
posted @ 2017-08-14 15:32 zzd233 阅读(207) 评论(0) 推荐(0) 编辑
摘要: 欢迎访问~原文出处——博客园-zhouzhendong 去博客园看该题解 题目传送门 - BZOJ1076 题意概括 有n个东西,k次扔出来。每次等概率扔出其中一个。 你可以拿这个东西,但是有条件,得在拿到指定东西之后再拿,否则白拿。 拿到一个东西,会获得其权值。可以是负数。 题解 状压dp跑一发。 阅读全文
posted @ 2017-08-14 14:35 zzd233 阅读(227) 评论(0) 推荐(0) 编辑
摘要: 欢迎访问~原文出处——博客园-zhouzhendong 去博客园看该题解 题意概括 有n个人,每一个人有一个最恨的人。 并且,每一个人有一个权值。 一个人不可以和他最恨的人同时被选中。 现在请你求出在这n个人中选出一些人,使得其权值和最大。 (题解在“心塞史”后面) 心塞史 注:蒟蒻第一次遇见这种基 阅读全文
posted @ 2017-08-13 20:44 zzd233 阅读(323) 评论(0) 推荐(0) 编辑
摘要: 欢迎访问~原文出处——博客园-zhouzhendong 去博客园看该题解 题目传送门 - 洛谷1623 题目描述 题目描述 给一棵树,你可以匹配有边相连的两个点,问你这棵树的最大匹配时多少,并且计算出有多少种最大匹配。 输入输出格式 输入格式: 第一行一个数N,表示有多少个结点。 接下来N行,每行第 阅读全文
posted @ 2017-08-13 13:14 zzd233 阅读(599) 评论(0) 推荐(0) 编辑
摘要: 欢迎访问~原文出处——博客园-zhouzhendong 去博客园看该题解 传送门 - BZOJ1053 题目描述 对于任何正整数x,其约数的个数记作g(x)。例如g(1)=1、g(6)=4。如果某个正整数x满足:g(x)>g(i) 0<i<x,则称x为反质数。例如,整数1,2,4,6等都是反质数。现 阅读全文
posted @ 2017-08-12 20:00 zzd233 阅读(266) 评论(0) 推荐(0) 编辑
摘要: 欢迎访问~原文出处——博客园-zhouzhendong 去博客园看该题解 题目传送门 - Vijos1906 题意概括 有一棵树,每一个节点都有一个权值w[i]。下面说的x,y都是该树中的节点。 对于点对(x,y),x,y,保证x和y距离为2,那么他们就可以联合,会产生w[x]*w[y]的联合权值。 阅读全文
posted @ 2017-08-12 18:28 zzd233 阅读(267) 评论(0) 推荐(0) 编辑
摘要: 欢迎访问~原文出处——博客园-zhouzhendong 去博客园看该题解 题目传送门 - PowerOJ1740 - 有SPJ - 推荐 题目传送门 - CodeVS1905 - 无SPJ - 0% 通过率(可以用来看题目) 题意概括 有n支队伍,m个组。第i支队伍有a[i]个人,第i个组最多可以有 阅读全文
posted @ 2017-08-12 15:45 zzd233 阅读(326) 评论(0) 推荐(0) 编辑
摘要: 欢迎访问~原文出处——博客园-zhouzhendong 去博客园看该题解 题目传送门 - 洛谷2765 题意概括 假设有n根柱子,现要按下述规则在这n根柱子中依次放入编号为1,2,3,...的球。 (1)每次只能在某根柱子的最上面放球。 (2)在同一根柱子中,任何2个相邻球的编号之和为完全平方数。 阅读全文
posted @ 2017-08-11 22:03 zzd233 阅读(392) 评论(0) 推荐(0) 编辑
摘要: 欢迎访问~原文出处——博客园-zhouzhendong 去博客园看该题解 题目传送门 - CodeVS1904 题目传送门 - 洛谷2764 题意概括 给出一个有向无环图,现在请你求一些路径,这些路径覆盖且仅覆盖所有的点一次。 现在让你求最少要几条路径。 CodeVS1904 - 只需要输出几条边 阅读全文
posted @ 2017-08-11 17:09 zzd233 阅读(303) 评论(0) 推荐(0) 编辑
摘要: 欢迎访问~原文出处——博客园-zhouzhendong 去博客园看该题解 题目传送门 题意概括 有m个实验,对应有一定的收入。有n个实验仪器,每个实验仪器的购买需要一定的花费。 对于这m个实验,每个实验分别需要使用一些实验器材(当然不是一次性的)。 问最大收入为多少。 题解 网络流解析 作为网络流2 阅读全文
posted @ 2017-08-10 21:26 zzd233 阅读(362) 评论(0) 推荐(0) 编辑
摘要: 欢迎访问~原文出处——博客园-zhouzhendong 去博客园看该题解 题目传送门 题意概括 裸的二分图匹配 题解 匈牙利算法 上板子 代码 阅读全文
posted @ 2017-08-10 21:07 zzd233 阅读(347) 评论(0) 推荐(0) 编辑
摘要: 欢迎访问~原文出处——博客园-zhouzhendong 去博客园看该题解 传送门 - POJ 传送门 - CodeVS 题意概括 给出一个图,告诉你边和容量,起点是1,汇点是n,让你求最大流。 题解 最大流模板题。 SAP跑一发! 学习网络流 代码 阅读全文
posted @ 2017-08-09 19:34 zzd233 阅读(271) 评论(0) 推荐(0) 编辑
摘要: 欢迎访问~原文出处——博客园-zhouzhendong 去博客园看该题解 题目传送门 UPD(2018-04-01):用Latex重打了公式…… 题意概括 把一个整数序列划分成任意连续的段,使得划分出来的每一段的价值和最大。 对于某一段,价值的计算公式为 $V=ax^2+bx+c$,其中 $x$ 为 阅读全文
posted @ 2017-08-08 18:09 zzd233 阅读(302) 评论(0) 推荐(0) 编辑
摘要: 欢迎访问~原文出处——博客园-zhouzhendong 去博客园看该题解 题目(传送门) 题解 DLX + 矩阵构建 (两个传送门) 对于这一题,矩阵的构建和数独有比较大的不同,常量表也打了很长。 我们要精确覆盖的信息有两种: 1. 每种形状限用一次 2. 每个格子限填一次 然后对于每个位置的每种形 阅读全文
posted @ 2017-08-07 22:18 zzd233 阅读(638) 评论(0) 推荐(1) 编辑
摘要: 欢迎访问~原文出处——博客园-zhouzhendong 去博客园看该题解 题目(传送门) 题意概括 给出一个残缺的数独,求这个数独中所有的解法中的最大价值。 一个数独解法的价值之和为每个位置所填的数值乘上该位置的权值,每一个位置的权值如下: 题解 DLX + 矩阵构建 (两个传送门) 然后,对于本题 阅读全文
posted @ 2017-08-07 22:12 zzd233 阅读(603) 评论(0) 推荐(0) 编辑
摘要: 欢迎访问~原文出处——博客园-zhouzhendong 去博客园看该题解 题目(传送门) 题意概括 给出一个残缺的16*16数独,求解。 题解 DLX + 矩阵构建 (两个传送门) 学完这个之后,再思考这一题。同样,每个位置每种取值4个信息。 数独共256个格子,每个格子都得填一个数,那么,我们要精 阅读全文
posted @ 2017-08-07 22:06 zzd233 阅读(506) 评论(0) 推荐(0) 编辑
摘要: 欢迎访问~原文出处——博客园-zhouzhendong 去博客园看该题解 题目(传送门) 题意概括 给出一个残缺的数独,求解。 题解 DLX + 矩阵构建 (两个传送门) 代码 阅读全文
posted @ 2017-08-07 22:00 zzd233 阅读(350) 评论(0) 推荐(0) 编辑
摘要: 欢迎访问~原文出处——博客园-zhouzhendong 去博客园看该题解 题目(传送门) 题意概括 给出一个残缺的数独,求解。SPJ 题解 DLX + 矩阵构建 (两个传送门) 代码 阅读全文
posted @ 2017-08-07 21:57 zzd233 阅读(319) 评论(0) 推荐(0) 编辑
摘要: 欢迎访问——该文出处-博客园-zhouzhendong 去博客园看该文章--传送门 描述 在做DLX算法题中,经常会做到数独类型的题目,那么,如何求解数独类型的题目?其实,学了数独的构建方法,那么DLX算法的精髓——构建矩阵也就慢慢的浮现了。 问题 假设有一个9*9的数独,我们限制每行每列以及每个3 阅读全文
posted @ 2017-08-07 21:50 zzd233 阅读(1916) 评论(0) 推荐(2) 编辑
摘要: 欢迎访问——该文出处-博客园-zhouzhendong 去博客园看该文章--传送门 舞蹈链是一个非常玄学的东西…… 问题模型 精确覆盖问题:在一个01矩阵中,是否可以选出一些行的集合,使得在这些行的集合中,每列有且仅有1个1。 例子 1 1 0 1 0 1 0 0 0 1 0 1 0 1 0 1 1 阅读全文
posted @ 2017-08-07 21:21 zzd233 阅读(901) 评论(0) 推荐(1) 编辑
摘要: 欢迎访问~原文出处——博客园-zhouzhendong 去博客园看该题解 题目 精确覆盖问题模板题 算法 DLX算法 学习DLX算法--传送门 代码 阅读全文
posted @ 2017-08-03 20:36 zzd233 阅读(310) 评论(0) 推荐(0) 编辑