导航

随笔分类 -  网络流

摘要:题意: 让你输出长度为n的某个序列,然后给你m个变量。 每次给某个数赋值的代价是 假设赋值a=7那么代价是3,因为7的二进制位中有3个1。 要求最后总代价最小。 输出总共要进行操作的次数,和最小代价。 先吐槽下,早期的cf题很多没有官方题解,只找到两篇中文题解...第一篇完全没搞懂大神再说什么。建图 阅读全文

posted @ 2016-04-28 15:06 tun~ 阅读(403) 评论(0) 推荐(0)

摘要:题意: 有n个点和m条边,让你从1出发到n再从n回到1,不要求所有点都要经过,但是每条边只能走一次。边是无向边。 问最短的行走距离多少。 一开始看这题还没搞费用流,后来搞了搞再回来看,想了想建图不是很难,因为要保证每条边只能走一次,那么我们把边拆为两个点,一个起点和终点,容量是1,权重是这条路的长度 阅读全文

posted @ 2016-04-21 19:31 tun~ 阅读(204) 评论(0) 推荐(0)

摘要:恢复内容开始 题意略。 这题在poj直接求最小费用会超时,但是题意也没说要求最优解。 根据线圈定理,如果一个跑完最费用流的残余网络中存在负权环,那么顺着这个负权环跑流量为1那么会得到更小的费用。 关键是坑在找环的起点。其实看了代码之后发现的确不难... 恢复内容结束 阅读全文

posted @ 2016-04-21 18:36 tun~ 阅读(242) 评论(0) 推荐(0)

摘要:题意略; 思路: 这题比较坑的地方是把每种货物单独建图分开算就ok了。 阅读全文

posted @ 2016-04-20 18:24 tun~ 阅读(143) 评论(0) 推荐(0)

摘要:思路: 把房子和人看成点,加上源点和汇点。 源点和每个人连容量为1,权值为0的边。 每个人和每个房子连容量为1,权值为距离的边。 每个房子和汇点连容量为1,权值为0的边。 阅读全文

posted @ 2016-04-19 12:01 tun~ 阅读(264) 评论(0) 推荐(0)

摘要:题意: 卡卡有一个矩阵,从左上角走到右下角,卡卡每次只能向右或者向下。矩阵里边都是不超过1000的正整数,卡卡走过的元素会变成0,问卡卡可以走k次,问卡卡最多能积累多少和。 思路: 最小费用最大流的题目。 建图自己没想出来,看了大神的建边,把每个点分解成两个点,一个代表进入一个代表出去,然后每个进入 阅读全文

posted @ 2016-04-18 21:48 tun~ 阅读(149) 评论(0) 推荐(0)

摘要:#include #include #define MAXN 1003 #define MAXM 10002*4 #define INF 10000000 using namespace std; //起点编号必须最小,终点编号必须最大 bool vis[MAXN]; //spfa中记录是否在队列里边 struct edge{ edge *next... 阅读全文

posted @ 2016-04-18 20:35 tun~ 阅读(178) 评论(0) 推荐(0)

摘要:题意: 给点数n和边数m。 接下来m条有向边。 a b c d 一次代表起点终点,下界上界。 求: 判断是否存在可行流,若存在则输出某可行流。否则输出IMPOSSIBLE 思路: 《一种简易的方法求解流量有上下界的网络中的网络流问题》 阅读全文

posted @ 2016-04-14 19:53 tun~ 阅读(205) 评论(0) 推荐(0)

摘要:恢复内容开始 题意: 给了n个点,m条有向边。 接下来m行,每条边给起点终点与容量,以及一个标记。 标记为1则该边必须满容量,0表示可以在容量范围内任意流。 求: 从源点1号点到终点n号点的最小的可行流。 思路: ge 1.二分最小可行流【是复杂度偏高的一种】 《一种简易的方法求解流量有上下界的网络 阅读全文

posted @ 2016-04-14 19:45 tun~ 阅读(197) 评论(0) 推荐(0)

摘要:题意: cas //测试数据组数 n m //行数 列数 a1 a2 ... an //每行的和 b1 b2 ... bn //每列的和 q //操作数量 //接下来q行 a b >/</= c //若a为0则表示一整列,b为0表示一整行,否则a代表第几行,b代表第几列,操作表示选中区域或者某个元素 阅读全文

posted @ 2016-04-13 19:29 tun~ 阅读(242) 评论(0) 推荐(0)

摘要:题意: m n //有m个猪圈,n个人卖猪。 a1...am //编号为i的猪圈里有ai头猪。 b1 c1...cb1 d1 //第i个人有bi把钥匙,分别是ci猪圈的,其它猪圈里的猪都是锁着的 他最多买di头猪 . . . bn c1...cbn dn 注意的是假如某买主有第一和第二个猪圈的钥匙, 阅读全文

posted @ 2016-04-11 19:52 tun~ 阅读(130) 评论(0) 推荐(0)

摘要:题意: k c m 分别代表挤奶机数量,牛数量,和挤奶机容量。 接下来(n=k+c)n*n的矩阵A,代表挤奶机或者牛的距离,如果对角线都为0,如果非对角线没有直接路相连也为0。 1 <= K <= 30 1 <= C <= 200 1 <= M <= 15 0<=Aij<=200 求:在机器不能过载 阅读全文

posted @ 2016-04-11 18:44 tun~ 阅读(211) 评论(0) 推荐(0)

摘要:题意:农场主有f种食物,d种饮料,n头牛。接下来的n行每行第一个数代表第i头牛喜欢吃的食物数量,和第i头牛喜欢喝的饮料数目。接下来分别是喜欢的食物和饮料的编号。求解:农场主最多能保证几头牛同时能吃到喜欢的食物和喜欢的饮料。思路:从源点到每种食物加流量为1的边,保证每种食物只能被吃一次。将每头牛分为两... 阅读全文

posted @ 2015-08-23 19:34 tun~ 阅读(284) 评论(0) 推荐(0)