- 博客(12)
- 收藏
- 关注
原创 洛谷 P1280 尼克的任务
题目描述尼克每天上班之前都连接上英特网,接收他的上司发来的邮件,这些邮件包含了尼克主管的部门当天要完成的全部任务,每个任务由一个开始时刻与一个持续时间构成。尼克的一个工作日为N分钟,从第一分钟开始到第N分钟结束。当尼克到达单位后他就开始干活。如果在同一时刻有多个任务需要完戍,尼克可以任选其中的一个来做,而其余的则由他的同事完成,反之如果只有一个任务,则该任务必需由尼克去完成,假如某些任务开始时刻尼克
2017-09-09 15:32:32
371
转载 二分图的相关算法
转自Memento一、**二分图最大匹配** 定义:匹配是图中一些边的集合,且集合中任意两条边都没有公共点,所有的匹配中,边数最多的就是最大匹配。 算法:用匈牙利算法可以在O(V*E)的复杂度内求出二分图的最大匹配,具体可以看byvoid神犇的blog,讲的很详细,不过想真正完全证明这个算法,得去看组合数学。 二、**二分图最小点覆盖** 定义:点覆盖是图中一些
2017-08-26 08:31:32
323
转载 编程中位运算用法总结
本博客转自http://blog.csdn.net/y990041769/article/details/12977271位运算应用口诀清零取反要用与,某位置一可用或若要取反和交换,轻轻松松用异或移位运算要点 1 它们都是双目运算符,两个运算分量都是整形,结果也是整形。 2 "
2017-08-19 17:24:26
329
转载 区间DP的主要思想
区间动态规划问题一般都是考虑,对于每段区间,他们的最优值都是由几段更小区间的最优值得到,是分治思想的一种应用,将一个区间问题不断划分为更小的区间直至一个元素组成的区间,枚举他们的组合 ,求合并后的最优值。 设F[i,j](1<=i<=j<=n)表示区间[i,j]内的数字相加的最小代价 最小区间F[i,i]=0(一个数字无法合并,∴代价为0)每次用变量k(i<=k<=j-1)将区间分为[i,k]和
2017-08-12 16:51:28
461
转载 欧拉回路
欧拉回路与欧拉道路图G的一个回路,若它恰通过G中每条边一次,则称该回路为欧拉(Euler)回路。 如果一个图只是形成一个连通所有节点的链,且每一点只走一次,则成为欧拉道路。 具有欧拉回路或欧拉道路的图称为欧拉图(简称E图)。 有向图的欧拉回路 一个有向图存在欧拉回路的前提条件是这个图是个连通图,其次要求其每个点的入度等于出度,或者其中有一个点的出度比入度大1,另一个点的入度比出度大一这样就存
2017-08-07 09:52:42
660
原创 最近公共祖先 LCA 倍增+Tarjan实现
最近公共祖先 : 对于有根树T的两个结点u、v,最近公共祖先LCA(T,u,v)表示一个结点x,满足x是u、v的祖先且x的深度尽可能大。通常在OI中最近公共祖先的解决办法分为在线做法和离线做法,离线做法也就是Tarjan算法,而在线做法则是倍增做法。========================================= Tarjan做法:利用并查集优越的时空复杂度,我们可以实现LCA
2017-08-07 09:46:52
518
原创 强连通分量 Tarjan算法
什么是Tarjan算法!!!! Tarjan算法:一种由Robert Tarjan提出的求解有向图强连通分量的线性时间的算法。这时候你可能会问什么是强连通,什么是强连通分量?根据百度百科可知: 如果两个顶点可以相互通达,则称两个顶点强连通(Strongly Connected)。如果有向图G的每两个顶点都强连通,称G是一个强连通图。有向图的极大强连通子图,称为强连通分量(Strongly Con
2017-08-04 09:43:38
522
原创 最小生成树(MST)的Kruskal实现
首先,要明确最小生成树(MST)的定义最小生成树:一个有 N个结点的连通图的生成树是原图的极小连通子图,且包含原图中的所有 N 个结点,并且有保持图连通的最少的边。求一个图的最小生成树一般会有两种方法 :①Kruskal ②Prim 但是,在NOIP当中,大多数选手都会选择
2017-08-03 20:52:58
414
原创 矩阵树定理(Matrix -Tree定理)
矩阵树定理在OI竞赛中的主要作用就是用于生成树的计数问题两个需明确的概念: ①:G的度数矩阵D[G]是一个N*N的矩阵,并且满足i != j 时,D[i][j] = 0;i = j时,D[i][j] = v[i]的度数。 ②:G的邻接矩阵A[G]也是一个N*N的矩阵,并且满足如果v[i]、v[j]之间有边直接相连,则A[i][j] = 1,否则为0。则定义G的Kirchhoff矩阵(拉普拉斯算子
2017-07-30 17:03:52
857
原创 最短路SPFA算法 (通过邻接表来实现)
适用范围:给定的图存在负权边,这时类似Dijkstra等算法便没有了用武之地,而Bellman-Ford算法的复杂度又过高,SPFA算法便派上用场了。 我们约定有向加权图G不存在负权回路,即最短路径一定存在。当然,我们可以在执行该算法前做一次拓扑排序,以判断是否存在负权回路,但这不是我们讨论的重点。主要思路:现将图用邻接表edges[mxan]来存储,(当然邻接矩阵也可以),然后进行SPFA操作,用
2017-07-29 10:48:35
1134
原创 常用数据类型的范围
常用数据类型的范围:unsigned int 0~4294967295 int -2147483648~2147483647 unsigned long 0~4294967295 long
2017-07-25 19:49:27
325
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人