2016年7月31日

有向图强连通分量 Tarjan算法

摘要: [有向图强连通分量] 在有向图G中,如果两个顶点间至少存在一条路径,称两个顶点强连通(strongly connected)。如果有向图G的每两个顶点都强连通,称G是一个强连通图。非强连通图有向图的极大强连通子图,称为强连通分量(strongly connected components)。 下图中 阅读全文

posted @ 2016-07-31 15:08 比特飞流 阅读(193) 评论(0) 推荐(0) 编辑

2016年7月22日

IncDec Sequence

摘要: 题目链接 http://www.lydsy.com/JudgeOnline/problem.php?id=3043【题目描述】给定一个长度为 n 的数列{a1,a2...an},每次可以选择一个区间[l,r],使这个区间内的数都加一或者都减一。问至少需要多少次操作才能使数列中的所有数都一样,并求出在 阅读全文

posted @ 2016-07-22 17:36 比特飞流 阅读(164) 评论(0) 推荐(0) 编辑

2016年6月10日

二分图 最大匹配 最小点覆盖 最大独立子集

摘要: ①一个二分图中的最大匹配数等于这个图中的最小点覆盖数 ②最大独立子集=点数-最小点覆盖数 阅读全文

posted @ 2016-06-10 15:39 比特飞流 阅读(288) 评论(0) 推荐(0) 编辑

二分图 匈牙利算法

摘要: 匈牙利算法是由匈牙利数学家Edmonds于1965年提出,因而得名。匈牙利算法是基于Hall定理中充分性证明的思想,它是部图匹配最常见的算法,该算法的核心就是寻找增广路径,它是一种用增广路径求二分图最大匹配的算法。 等等,看得头大?那么请看下面的版本: 通过数代人的努力,你终于赶上了剩男剩女的大潮, 阅读全文

posted @ 2016-06-10 15:30 比特飞流 阅读(267) 评论(0) 推荐(0) 编辑

2016年6月7日

旅馆

摘要: Usaco2008 Feb 奶牛们最近的旅游计划,是到苏必利尔湖畔,享受那里的湖光山色,以及明媚的阳光。作为整个旅游的策划者和负责人,贝茜选择在湖边的一家著名的旅馆住宿。这个巨大的旅馆一共有N (1 <= N <= 50,000)间客房,它们在同一层楼中顺次一字排开,在任何一个房间里,只需要拉开窗帘 阅读全文

posted @ 2016-06-07 08:15 比特飞流 阅读(129) 评论(0) 推荐(0) 编辑

2016年6月4日

线段树(segment tree)

摘要: 线段树在一些acm题目中经常见到,这种数据结构主要应用在计算几何和地理信息系统中。下图就为一个线段树: (PS:可能你见过线段树的不同表示方式,但是都大同小异,根据自己的需要来建就行。) 1.线段树基本性质和操作 线段树是一棵二叉树,记为T(a, b),参数a,b表示区间[a,b],其中b-a称为区 阅读全文

posted @ 2016-06-04 10:27 比特飞流 阅读(206) 评论(0) 推荐(0) 编辑

2016年5月24日

矩阵链乘

摘要: 一个n*m的矩阵由n行m列共n*m排列而成。两个矩阵A和B可以相乘当且仅当A的列数等于B的行数。一个n*m的矩阵乘m*p的矩阵,运算量为n*m*p。 矩阵乘法不满足分配律,但满足结合律。因此A*B*C既可以按顺序(A*B)*C也可以按A*(B*C)来进行。假设A、B、C分别是2*3、3*4、4*5的 阅读全文

posted @ 2016-05-24 17:08 比特飞流 阅读(217) 评论(0) 推荐(0) 编辑

2016年5月19日

数位dp

摘要: 1、在所有的n为书中,有多少个数中有偶数个3?由于结果很大,你只需要输出这个答案对12345取余的值。 数据范围 1<=n<=1000 阅读全文

posted @ 2016-05-19 11:12 比特飞流 阅读(73) 评论(0) 推荐(0) 编辑

2016年5月18日

最大子矩阵 系列

摘要: 最大子矩阵 1 描述 有一块M*N大小的,由0、1组成的矩阵。现在让你计算出这个矩阵中一块最大的正方形子矩阵,使得该子矩阵全部由0组成。 第一行一个数P,为数据组数(P<=10)。 对于每一组数据,第一行两个数M,N(1<=M,N<=100)。 接下来M行,每行N个数字,该数字是0或者1。 对于每组 阅读全文

posted @ 2016-05-18 17:26 比特飞流 阅读(156) 评论(0) 推荐(0) 编辑

最大子段和问题,最大子矩阵和问题,最大m子段和问题

摘要: 1、最大子段和问题 问题定义:对于给定序列a1,a2,a3……an,寻找它的某个连续子段,使得其和最大。如( -2,11,-4,13,-5,-2 )最大子段是{ 11,-4,13 }其和为20。 (1)枚举法求解 枚举法思路如下: 以a[0]开始: {a[0]}, {a[0],a[1]},{a[0] 阅读全文

posted @ 2016-05-18 17:09 比特飞流 阅读(594) 评论(0) 推荐(0) 编辑

导航