07 2016 档案
摘要:题目链接:http://acm.hust.edu.cn/vjudge/problem/37171 题目大意: 给出一个n m的矩阵,分为墙和空地,有的空地上有老鼠,你有两颗手雷(!),可以放置在不同的两块空地上,手雷爆炸后消灭一定范围内的老鼠(冲击波具体传播方式看原题),求能否消灭全部老鼠。 分析:
阅读全文
摘要:题目链接:http://acm.hust.edu.cn/vjudge/problem/109646 题目大意: 给出一个m n的矩阵,要求每格用黑色或白色填充,且任意一个2x2的部分不能同色,求有多少种填充方案。 1 include include include define rep(i,x,y)
阅读全文
摘要:题目链接:http://acm.hust.edu.cn/vjudge/problem/52671 题目大意: 给出一个初始森林,支持两种操作: (1)输出某个点所在树的直径长度 (2)添加一条边合并两棵树,使新的树的直径长度最小 分析: 每棵树用并查集维护,同时维护每棵树直径长度,初始图两遍DFS找
阅读全文
摘要:矩阵: 长为n,宽为m,里面包含nm个元素。 矩阵数乘: kA,即为kA[i][j] 矩阵加法: C=A+B ,即为C[i][j]=A[i][j]+B[i][j] 类似的我们定义减法A+B为A+( 1)B 零矩阵: 所有元素都为0的矩阵 向量: n或m为1的矩阵,n为1则为行向量,m为1则为列向量
阅读全文
摘要:强连通分量: 一个有向图内,若一个子图是强连通的,且满足极大性,则称它是原图的一个强连通分量。在将所有强连通分量缩为一个点后,即得到了一个DAG Kosaraju算法: 我们对原图进行一遍DFS,记录它结束的时间点,然后在反向图中从时间点从大到小DFS,每次DFS遍历的结点即在一个强连通分量中,时间
阅读全文
摘要:LCA: 在一棵有根树中,在两个节点的公共祖先中,深度最大的一个称为它们的最近公共祖先(LCA) 不难发现暴力求LCA时间复杂度是O(n)的,这里给出两种快速求LCA的方法: (1)倍增法: 类似于ST表,我们用parent[i][k]表示结点i的往上第2^k代祖先结点,在O(nlogn)时间内求出
阅读全文
摘要:题目链接:http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id=415185 题目大意 : 给出一个n n的01矩阵,求把它的“1”部分分为两份,使一份经旋转和平移后能够与另一半重合。 分析: 第二次犯错了……Cable TV net
阅读全文
摘要:题目链接: http://www.lydsy.com/JudgeOnline/problem.php?id=1087 题目大意: 给出一个n n的棋盘,要求在上面摆K个国王,互相不攻击,求多少种方法。 分析: 状压DP第一发! 一看n include include include define r
阅读全文
摘要:题目链接: http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id=411106 题目大意: 给出一个长为n的非负数列,求删除最少的数,使任意相邻两个数差的绝对值不为1 1区间查询 好像有点抽象……具体看代码吧。 代码: zkw线段树就
阅读全文

浙公网安备 33010602011771号