随笔分类 -  图论---------------------

1
摘要:题目链接 题目大意: n个点m条边的无向图,下面最多n行,每一行的第二到最后一个数与第一个数有边相连,保证图联通,求割点数。 分析: 典型的tarjan求割点,dfs出一棵树来就差不多了,读入的细节需要注意。 注意根节点若只有一个儿子则不是割点。 代码: 1 #include<cstdio> 2 # 阅读全文
posted @ 2017-11-09 10:09 Child-Single 阅读(204) 评论(0) 推荐(0)
摘要:题目链接 题目大意: 曹操有N个岛,这些岛用M座桥连接起来,每座桥有士兵把守(也可能没有), 诸葛亮把所有炸弹都带走了,只留下一枚给周瑜(真狠)。 周瑜想让这N个岛不连通,但需要派出不小于守桥士兵数的人去炸桥,因为只有一枚炸弹,因此只够炸掉一座桥。 分析: 很明显的求代价最小的桥,当然这道题有几个特 阅读全文
posted @ 2017-11-09 10:02 Child-Single 阅读(167) 评论(0) 推荐(0)
摘要:Description 由于对Farmer John的领导感到极其不悦,奶牛们退出了农场,组建了奶牛议会。议会以“每头牛 都可以获得自己想要的”为原则,建立了下面的投票系统: M只到场的奶牛 (1 <= M <= 4000) 会给N个议案投票(1 <= N <= 1,000) 。每只 奶牛会对恰好两 阅读全文
posted @ 2017-10-20 07:43 Child-Single 阅读(232) 评论(0) 推荐(0)
摘要:Description Bessie wants to navigate her spaceship through a dangerous asteroid field in the shape of an N x N grid (1 <= N <= 500). The grid contains 阅读全文
posted @ 2017-10-20 07:03 Child-Single 阅读(377) 评论(0) 推荐(0)
摘要:Description FJ的N(2 <= N <= 1,000,000)头奶牛选择了接力跑作为她们的日常锻炼项目。至于进行接力跑的地点 自然是在牧场中现有的T(2 <= T <= 100)条跑道上。 农场上的跑道有一些交汇点,每条跑道都连结了两个不同的交汇点 I1_i和I2_i(1 <= I1_i 阅读全文
posted @ 2017-10-20 06:55 Child-Single 阅读(194) 评论(0) 推荐(0)
摘要:Description BESSIE准备用从牛棚跑到池塘的方法来锻炼. 但是因为她懒,她只准备沿着下坡的路跑到池塘, 然后走回牛棚. BESSIE也不想跑得太远,所以她想走最短的路经. 农场上一共有M (1 <= M <= 10,000)条路, 每条路连接两个用1..N(1 <= N <= 1000 阅读全文
posted @ 2017-10-19 22:06 Child-Single 阅读(303) 评论(0) 推荐(0)
摘要:Description John在他的农场中闲逛时发现了许多虫洞。虫洞可以看作一条十分奇特的有向边,并可以使你返回到过去的一个时刻(相对你进入虫洞之前)。John的每个农场有M条小路(无向边)连接着N (从1..N标号)块地,并有W个虫洞。其中1<=N<=500,1<=M<=2500,1<=W<=2 阅读全文
posted @ 2017-10-14 10:48 Child-Single 阅读(338) 评论(0) 推荐(0)
摘要:Description Input * 第一行: 两个空格分开的数, N和M * 第2..M+1行: 三个空格分开的数a_i, b_i,和t_i * 第一行: 两个空格分开的数, N和M * 第2..M+1行: 三个空格分开的数a_i, b_i,和t_i Output * 第1..N-1行: 第i行 阅读全文
posted @ 2017-09-29 06:44 Child-Single 阅读(126) 评论(0) 推荐(0)
摘要:Description 作为对奶牛们辛勤工作的回报,Farmer John决定带她们去附近的大城市玩一天。旅行的前夜,奶牛们在兴奋地讨论如何最好地享受这难得的闲暇。 很幸运地,奶牛们找到了一张详细的城市地图,上面标注了城市中所有L(2 <= L <= 1000)座标志性建筑物(建筑物按1..L顺次编 阅读全文
posted @ 2017-09-18 13:37 Child-Single 阅读(171) 评论(0) 推荐(0)
摘要:Description 农夫JOHN为牛们做了很好的食品,但是牛吃饭很挑食. 每一头牛只喜欢吃一些食品和饮料而别的一概不吃.虽然他不一定能把所有牛喂饱,他还是想让尽可能多的牛吃到他们喜欢的食品和饮料. 农夫JOHN做了F (1 <= F <= 100) 种食品并准备了D (1 <= D <= 100 阅读全文
posted @ 2017-09-17 19:46 Child-Single 阅读(170) 评论(0) 推荐(0)
摘要:题目链接 题目大意就是给定n个二元组(a,b),求取n-k个二元组时sigma(a[i])/sigma(b[i])的最大值并输出最大值*100向下取整的答案。 很明显的分数规划,因为题目保证ai<=bi所以最大值必然<=1。 我们用x[i]来表示i这个二元组取或不取(0为不取,1为取,当然这个数组最 阅读全文
posted @ 2017-09-16 23:12 Child-Single 阅读(102) 评论(0) 推荐(0)
摘要:题目链接 建立0~k共k+1层图,用dis[x][d]表示x到源点(此题为1)将d条道路距离降为0的距离,dijkstra跑的话因为从堆顶取出的就是已经确定的,因此当从堆顶取出的元素是n时,就可以直接返回并输出了。 用了堆优化,注意每次从堆顶取出元素后如果p.w!=dis[p.to][p.d],说明 阅读全文
posted @ 2017-09-14 22:00 Child-Single 阅读(154) 评论(0) 推荐(0)
摘要:题目链接 分析:题目要求一个连通图的从1到n的严格次短路,我们只需要在跑最短路的时候顺便判一下次短路是否能够被更新即可。 dis[x][0]表示1到x的最短路,而dis[x][1]则表示次短路,需要分成三类讨论: dis[x][0]+e[i].w<dis[to][0],此时dis[x][1]是原最短 阅读全文
posted @ 2017-09-13 16:44 Child-Single 阅读(247) 评论(0) 推荐(0)
摘要:题目链接 判断一个图是否为强联通图,只要tarjan求出强联通分量的个数,若个数大于1则不是连通图,tarjan的模板题。 1 #include<cstdio> 2 #include<cmath> 3 #include<cstring> 4 #include<algorithm> 5 #define 阅读全文
posted @ 2017-08-30 19:00 Child-Single 阅读(140) 评论(0) 推荐(0)
摘要:题目大意:一天南北线上有n个防御站,给出他们之间的位置关系,问有没有可能存在这样一种位置布置符合所给的位置关系。关系有两种,一种是 P A B X,表示A在B北边X光年的位置,V A B表示A在B北边至少1光年位置。 分析:仍然考虑差分约束,容易想到,若关系为P,则 s[a]-a[b]=c; 变换一 阅读全文
posted @ 2017-08-21 12:34 Child-Single 阅读(210) 评论(0) 推荐(0)
摘要:题目大意:给出n个区间,现在要你找出一个点集,使得这n个区间都至少有2个元素在这个点集里面,问这个点集最少有几个点。 解法一:差分约束系统 分析:其实这道题应该说是POJ1201的简化版,不过要注意的一点是,如果你用的是SPFA,那么你的差分约束系统应该为: s[b+1]-s[a]>=2; s[b+ 阅读全文
posted @ 2017-08-21 11:45 Child-Single 阅读(221) 评论(0) 推荐(0)
摘要:我的第一道差分约束系统......刚开始有点摸不着头脑,搞清楚后发现完全就是套路... 题目大意:在线段[ai,bi]上至少选ci个点,使被选出的点的个数最少而且满足所有的限制条件,输出这个最小值。 分析:差分约束系统我就不在这里介绍啦~\(≧▽≦)/~(这种东西网上一搜一大堆) 我们设s[i]表示 阅读全文
posted @ 2017-08-21 11:13 Child-Single 阅读(220) 评论(0) 推荐(0)
摘要:给棋盘黑白染色,源点向不为障碍的奇点连一条权值为1的边,向可以攻击到的偶点连一条边,权值为inf;偶点向汇点(t=n*n+1)连一条权值为1的边。 跑最小割,最小割的意义就是看至少要放弃几个点(即这里不放骑士)才能使他们不会互相攻击,最后用总格数减去最小割时记得也要减去障碍数,即n*n-ans-m. 阅读全文
posted @ 2017-06-13 19:17 Child-Single 阅读(205) 评论(0) 推荐(0)
摘要:由数据范围看是可以用网络流的。。。 其实还是接近于很裸的网络流,不过是变成了动态建边,图会很大,不过题目数据范围小啊。。。 枚举时间,自己想一个上界,cyc大佬说是100,那就100吧,到达上界前找到就输出当前时间并退出,超出上界就输出0。 cyc大佬反复强调tot=1而不是2!!! 然后就跑啊跑, 阅读全文
posted @ 2017-05-11 21:17 Child-Single 阅读(257) 评论(0) 推荐(0)
摘要:嗯,先上题目描述。。。 此题接近裸的匈牙利算法,将陆地和其四周是陆地的点连一条边,这样就有了一个无向图。 接着就是从第一个点出发枚举未被标记的点,标记与其对应的另一个点(因为是1*2的长方形)。 开了一个四维数组e[x1][y1][x2][y2],若为零代表点(x1,y1)与(x2,y2)不连通。 阅读全文
posted @ 2017-04-27 21:47 Child-Single 阅读(225) 评论(1) 推荐(1)

1