- 博客(6)
- 收藏
- 关注
原创 线性筛法(欧拉筛法)求素数
时间复杂度O(n)当n比较大时欧拉筛法所用的时间比O(nloglogn)的算法的时间少的会越来越明显为什么呢?因为在欧拉筛法中,每一个合数只被访问并将其所对的f[]的值修改了一次。for(i = 2; i ){ if(f[i] == 0) { p[++cnt] = i; } for(j = 1; j ) {
2016-11-10 18:24:20 393
原创 bzoj 1001狼抓兔子(对偶图+最短路)最大流
推荐文章:《浅析最大最小定理在信息学竞赛中的应用》--周冬题目现在小朋友们最喜欢的"喜羊羊与灰太狼",话说灰太狼抓羊不到,但抓兔子还是比较在行的,而且现在的兔子还比较笨,它们只有两个窝,现在你做为狼王,面对下面这样一个网格的地形: 左上角点为(1,1),右下角点为(N,M)(上图中N=4,M=5).有以下三种类型的道路 1:(x,y)(x+1,y) 2:(x
2016-11-10 18:24:15 235
原创 bzoj 1179[Apio2009]Atm (tarjan+spfa)
题目输入第一行包含两个整数N、M。N表示路口的个数,M表示道路条数。接下来M行,每行两个整数,这两个整数都在1到N之间,第i+1行的两个整数表示第i条道路的起点和终点的路口编号。接下来N行,每行一个整数,按顺序表示每个路口处的ATM机中的钱数。接下来一行包含两个整数S、P,S表示市中心的编号,也就是出发的路口。P表示酒吧数目。接下来的一行中有P个整数,表示P个有酒吧的路口的
2016-11-10 18:24:11 293
原创 tarjan讲解(用codevs1332(tarjan的裸题)讲解)
主要借助这道比较裸的题来讲一下tarjan这种算法 tarjan是一种求解有向图强连通分量的线性时间的算法。(用dfs来实现)如果两个顶点可以相互通达,则称两个顶点强连通。如果有向图G的每两个顶点都强连通,称G是一个强连通图。有向图的极大强连通子图,称为强连通分量。 在上面这张有向图中1,2,3,4形成了一个强连通分量,而1,2,4,和1,3,4并不是(因为它们并不是极大强连通子图
2016-11-10 18:24:08 250
原创 spfa
这篇文章来介绍一下spfa(Shortest Path Faster Algorithm)这种算法这是一种单源最短路的一种十分高效的的算法。我们需要用邻接表来存储一下图,以及用队列进行优化。我们以1为起点,以n为终点来讲一下(一共n个点)用L数组记录当前点的最短路先把每一条边的最短路赋成最大值(赋多少自己决定,反正得大一点)我们先把1入队因为我们用的是队列进行优化,所以
2016-11-10 18:24:03 343
原创 codevs 1021 玛丽卡(spfa)
题目描述 Description麦克找了个新女朋友,玛丽卡对他非常恼火并伺机报复。 因为她和他们不住在同一个城市,因此她开始准备她的长途旅行。 在这个国家中每两个城市之间最多只有一条路相通,并且我们知道从一个城市到另一个城市路上所需花费的时间。 麦克在车中无意中听到有一条路正在维修,并且那儿正堵车,但没听清楚到底是哪一条路。无论哪一条路正在维修,从玛丽卡所在的
2016-11-10 18:23:58 601
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人