
图论
文章平均质量分 54
G_congratulation
这个作者很懒,什么都没留下…
展开
-
POJ1236----tarjan缩点
题目一些学校通过网络连接在一起,每个学校手中有一份名单,即它所指向的点。学校A的名单中有学校B,并不能保证学校B的名单里有学校A。现在有一软件。 1.问至少发给几个学校才能保证所有的学校都可以得到该软件。 2.至少加几条边才能使将软件发给任何一个学校后,其他所有学校都可以得到软件。 N题解一个有向图,第一问的实质是询问入度为0的点有多少,第二问的可将所有出度/入度为原创 2016-07-24 19:24:04 · 454 阅读 · 0 评论 -
hdu3062 Party tarjan + 2-SAT
题面 有n对夫妻被邀请参加一个聚会,因为场地的问题,每对夫妻中只有1人可以列席。在2n 个人中,某些人之间有着很大的矛盾(当然夫妻之间是没有矛盾的),有矛盾的2个人是不会同时出现在聚会上的。有没有可能会有n 个人同时列席?题解 发发两者不能同时出现,符合2-SAT模型,因为m的数据过大,所以常规的dfs算法的O(n(n+m))的复杂度不能承受。 又其提问为是否存在最大解,故将原问题建...原创 2019-04-12 22:18:39 · 297 阅读 · 0 评论 -
Dinic网络流(我的模板+注释)
#include<cstdio>#include<iostream>#include<algorithm>#include<cstring> #define maxn 10010#define maxm 10202010#define Inf 210000000using namespace std;struct Edge{ int u, v, cap, flow; i原创 2016-09-24 20:39:49 · 594 阅读 · 0 评论 -
树剖模板
#include#include#include#include#include#define Inf 0x3f3f3f3fusing namespace std;const int maxn = 10010;const int maxm = 50010;const int p = 1e9+7;struct Edge { int u,原创 2017-01-18 22:04:38 · 335 阅读 · 0 评论 -
codevs1183 泥泞的道路(最短路)
CS有n个小区,并且任意小区之间都有两条单向道路(a到b,b到a)相连。因为最近下了很多暴雨,很多道路都被淹了,不同的道路泥泞程度不同。小A经过对近期天气和地形的科学分析,绘出了每条道路能顺利通过的时间以及这条路的长度。现在小A在小区1,他希望能够很顺利地到达目的地小区n,请帮助小明找出一条从小区1出发到达小区n的所有路线中(总路程/总时间)最大的路线。请你告诉他这个最大值。原创 2016-10-08 19:46:24 · 510 阅读 · 0 评论 -
codevs 1227 方格取数
代码==原创 2016-09-28 22:02:23 · 392 阅读 · 0 评论 -
codevs 1227 方格取数2
给出一个n*n的矩阵,每一格有一个非负整数Aij,(Aij <= 1000)现在从(1,1)出发,可以往右或者往下走,最后到达(n,n),每达到一格,把该格子的数取出来,该格子的数就变成0,这样一共走K次,现在要求K次所达到的方格的数的和最大原创 2016-09-29 00:05:56 · 469 阅读 · 0 评论 -
codevs 1033 蚯蚓的游戏问题----费用流
费用流水题原创 2016-09-28 21:21:48 · 521 阅读 · 0 评论 -
最小费用最大流 模板
一个模板==原创 2016-09-25 20:12:43 · 465 阅读 · 0 评论 -
noip2013 货车运输
A国有 n 座城市,编号从 1 到 n,城市之间有 m 条双向道路。每一条道路对车辆都有重量限制,简称限重。现在有 q 辆货车在运输货物,司机们想知道每辆车在不超过车辆限重的情况下,最多能运多重的货物。原创 2016-09-22 19:17:53 · 511 阅读 · 0 评论 -
二分图匹配
0.0代码仓库原创 2016-09-19 21:05:14 · 560 阅读 · 0 评论 -
noip2015 运输计划
公元 2044 年,人类进入了宇宙纪元。L 国有 n 个星球,还有 n−1 条双向航道,每条航道建立在两个星球之间,这 n−1 条航道连通了 L 国的所有星球。小 P 掌管一家物流公司, 该公司有很多个运输计划...原创 2016-09-22 19:36:28 · 1134 阅读 · 0 评论 -
bzoj 1601 [Usaco2008 Oct]灌水
Farmer John已经决定把水灌到他的n(1<=n<=300)块农田,农田被数字1到n标记。把一块土地进行灌水有两种方法,从其他农田饮水,或者这块土地建造水库。 建造一个水库需要花费wi(1<=wi<=100000),连接两块土地需要花费Pij(1<=pij<=100000,pij=pji,pii=0). 计算Farmer John所需的最少代价。原创 2016-09-22 18:56:59 · 817 阅读 · 0 评论 -
tarjan算法----求强连通分量
扔上带注释的代码 回去慢慢补==#include<cstdio>#include<iostream>#include<cstdlib>#include<algorithm>#include<cstring>#define max_edge 10010#define max_node 10010using namespace std;struct Edge { int u;原创 2016-07-16 19:17:12 · 385 阅读 · 0 评论 -
hdu1814 Peaceful Commission 2-SAT建图入门
题面The Public Peace Commission should be legislated in Parliament of The Democratic Republic of Byteland according to The Very Important Law. Unfortunately one of the obstacles is the fact that some d...原创 2019-04-12 22:25:15 · 338 阅读 · 0 评论