aPlugForUNIX(POJ-1087)【最大流】】的更多相关文章

A Plug for UNIX Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 15597   Accepted: 5308 Description You are in charge of setting up the press room for the inaugural meeting of the United Nations Internet eXecutive (UNIX), which has an int…
没啥好说的,慢慢建图 Sample Input 4 A B C D 5 laptop B phone C pager B clock B comb X 3 B X X A X D Sample Output 1 题意:有n个不同的插座,有m台不同的机器需要m种插头,有k组转换:插头A能由插头B转换而来.问这些机器最少有几台不能插上插座. #include<cstdio> #include<iostream> #include<algorithm> #include<…
POJ 1087 A Plug for UNIX / HDU 1526 A Plug for UNIX / ZOJ 1157 A Plug for UNIX / UVA 753 A Plug for UNIX / UVAlive 5418 A Plug for UNIX / SCU 1671 A Plug for UNIX (网络流) Description You are in charge of setting up the press room for the inaugural meet…
很巧妙的思想 转自:http://www.cnblogs.com/kuangbin/archive/2012/08/21/2649850.html 本题能够想到用最大流做,那真的是太绝了.建模的方法很妙! 题意就是有N头牛,F个食物,D个饮料. N头牛每头牛有一定的喜好,只喜欢几个食物和饮料. 每个食物和饮料只能给一头牛.一头牛只能得到一个食物和饮料. 而且一头牛必须同时获得一个食物和一个饮料才能满足.问至多有多少头牛可以获得满足. 最初相当的是二分匹配.但是明显不行,因为要分配两个东西,两个东…
题目连接:http://poj.org/problem? id=1087 题意: n种插座 ,m个电器,f组(x,y)表示插座x能够替换插座y,问你最多能给几个电器充电. 解法:起点向插座建边,容量1,电器向汇点建边.容量1,插座向电器建边.容量1,能够替换的插座间建边.容量无穷大.然后套板子. ..求最大流. 代码: #include <stdio.h> #include <ctime> #include <math.h> #include <limits.h&…
网络流,关键在建图 建图思路在代码里 /* 最大流SAP 邻接表 思路:基本源于FF方法,给每个顶点设定层次标号,和允许弧. 优化: 1.当前弧优化(重要). 1.每找到以条增广路回退到断点(常数优化). 2.层次出现断层,无法得到新流(重要). 时间复杂度(m*n^2) */ #include <iostream> #include <cstdio> #include <cstring> #include <map> #define ms(a,b) mem…
题面 You are in charge of setting up the press room for the inaugural meeting of the United Nations Internet eXecutive (UNIX), which has an international mandate to make the free flow of information and ideas on the Internet as cumbersome and bureaucra…
C - A Plug for UNIXTime Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://acm.hust.edu.cn/vjudge/contest/view.action?cid=88038#problem/C Description You are in charge of setting up the press room for the inaugural meeting of the United Nations Internet…
题目大意:这个题意有些蛋疼,看了很大会才明白什么意思,有N个插座,这些插座都是有类型的只能给这种类型的电器充电,下面接着给了M种电器,和电器的插头类型,还有K种转换器,可以把一种类型转换成另一种,转换器也是可以串联使用的. 输入说明: 首先输入的是一个N,下面有N种插座,每种插座都有一个字符串代表,接着输入一个M,表示有M个电器需要充电,输入的每行有一个电器和它需要的插座类型,然后输入一个K,下面有K个转换器. 分析:这个英文写的这么长确实比较难理解,不过看懂题意后也是比较容易了,可以让电器给可…
链接: http://poj.org/problem?id=1087 http://acm.hust.edu.cn/vjudge/contest/view.action?cid=82835#problem/C http://acm.hust.edu.cn/vjudge/contest/view.action?cid=88230#problem/J(密码:0817) n个插座,m个电器及其对应的插座,k个转化器,前一个插座可以转化为后一个插座,问最少有多少设备没有插座用,转换器数量不限最大流,源点…
找了好久这两个的区别...UVA820 WA了 好多次.不过以后就做模板了,可以求任意两点之间的最大流. UVA 是无向图,因此可能有重边,POJ 1273是有向图,而且是单源点求最大流,因此改模板的时候注意一下. 而且我居然犯了更愚蠢的错误,以为重边的时候需要选最大的,正解应该是累加.... #include<stdio.h> #include<queue> #include<string.h> #define INF 999999 using namespace s…
题目链接:http://poj.org/problem?id=1273 a.EK算法:(Edmond-Karp): 用BFS不断找增广路径,当找不到增广路径时当前流量即为最大流. b.dinic算法:不断找最短路. 题意:现在有m个池塘(从1到m开始编号,1为源点,m为汇点),及n条水渠,给出这n条水渠所连接的池塘和所能流过的水量,求水渠中所能流过的水的最大容量. //http://blog.csdn.net/huzhengnan/article/details/7766446一个写的特别好的博…
题目链接:http://poj.org/problem?id=1149 #include <cstdio> #include <cmath> #include <algorithm> #include <iostream> #include <cstring> #include <queue> #include <vector> #define maxn 1050 #define maxe 200000 using nam…
题目链接:http://poj.org/problem?id=3281 #include <cstdio> #include <cmath> #include <algorithm> #include <iostream> #include <cstring> #include <queue> #include <vector> #define maxn 105 #define maxe 20000 using names…
Alice's Chance Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 7327   Accepted: 2992 Description Alice, a charming girl, have been dreaming of being a movie star for long. Her chances will come now, for several filmmaking companies invit…
题目链接:https://vjudge.net/problem/POJ-1087 题目:有n个插座,插座上只有一个插孔,有m个用电器,每个用电器都有插头,它们的插头可以一样, 有k个插孔转化器, a b 的意思就是  可以把 b类的插孔变成a类的插孔,那么a类对于的插头就可以用这个插孔充电了. 问:没插孔的用电器最少有几个. 思路:源点->插座->用电器->汇点. 因为插座之间可以相互转化,可能A,B,C,D都可以变成E类的插座,所以插座之间的流应该为INF,其他的边流都是1,起到限流的…
转载 百度文库花了5分下的 不过确实是自己需要的东西经典的最大流题POJ1273 ——其他练习题 POJ3436 . 题意描述: 现在有m个池塘(从1到m开始编号,1为源点,m为汇点),及n条水渠,给出这n条水渠所连接的池塘和所能流过的水量,求水渠中所能流过的水的最大容量.一道基础的最大流题目.但是模板小心使用,目前只是求单源点的最大流. 参考数据: 输入: 5 4 1 2 40 1 4 20 2 4 20 2 3 30 3 4 10 输出: 50 程序实现: 增广路算法Edmonds_Karp…
题目描述:现在由你负责布置Internet联合组织首席执行官就职新闻发布会的会议室.由于会议室修建时被设计成容纳全世界各地的新闻记者,因此会议室提供了多种电源插座用以满足(会议室修建时期)各国不同插头的类型和电压.不幸的是,会议室是很多年前修建的,那时新闻记者很少使用电子设备,所以会议室对每种插座只提供了一个.新闻发布会时,新闻记者需要使用许多电子设备,如手提电脑,麦克风,录音机,传呼机等等.尽管这些设备很多可以使用电池,但是由于发布会时间很长并且是单调乏味的,记者们希望能够使用尽可能多的设备(…
题意:有N个供应商,M个店主,K种物品.每个供应商对每种物品的的供应量已知,每个店主对每种物品的需求量的已知,从不同的供应商运送不同的货物到不同的店主手上需要不同的花费,又已知从供应商m送第k种货物的单位数量到店主n手上所需的单位花费.供应是否满足需求?如果满足,最小运费是多少? 思路:这题一读完就知道是费用流了,刚开始想着拆点,不过算了一下,把m个供应商拆成m*k个点,n个店主拆成n*k个点,加起来有5000多个点,肯定会超时的,看了网上说每种商品求一次费用流就可以了,就是100个点求50次.…
最大流简单题,,这题重要的是知道了scanf("%s",str);sscanf(str,"(%d,%d)%d",&x,&y,&w);读入方式 #include<stdio.h> #include<string.h> const int N=210; const int inf=0x3fffffff; int dis[N],gap[N],head[N],num,start,end,ans,n,m; struct edge…
Paratroopers Time Limit:1000MS     Memory Limit:65536KB     64bit IO Format:%I64d & %I64u Submit Status Practice POJ 3308 Appoint description:  System Crawler  (2014-10-14) Description It is year 2500 A.D. and there is a terrible war between the forc…
在大米饼的帮助下,终于找到了大米饼程序中如同大米饼一般的错误! 考点在问题转化,然后就跑一个你喜欢的最大流算法(二分图可以啵?) 再来一个例子吧: [纯手绘大米饼图片] 其中有的边权是1,否则就是inf,所以就将问题转化为求超级源点(0)到超级汇点(13)的最大流.我依旧使用ISAP,很开心用ISAP做完了所有老师要求用迪尼克或者艾德蒙·卡普算法做的几个题目,开心点在哪里呢-在乎大米饼之中也.最后一个困扰了me20min的错误是: 把device[i][1]错写成device[i][2],使得C…
题意: 几种插头,每一种都只有一个,但有无限个插头转换器,转换器(a,b) 意味着 可以把b转换为a,有几个设备,每个设备对应一种插头,求所不能匹配插头的设备数量 这个题可以用二分图做 , 我用的是最大流,最后用设备数 减去 最大匹配数即可 #include <iostream> #include <cstring> #include <cstdio> #include <algorithm> #include <cmath> #include…
题意抽象出来就是给了一个费用流的残存网络,判断该方案是不是最优方案,如果不是,还要求给出一个更优方案. 在给定残存网络上检查是否存在负环即可判断是否最优. 沿负环增广一轮即可得到更优方案. 考虑到制作模板的需要,我用前向星建图做的.此题用邻接矩阵应该更方便. #include<queue> #include<cstdio> #include<algorithm> #include<cstring> #define rep(i,a,b) for(int i=a…
On a grid map there are n little men and n houses. In each unit time, every little man can move one unit step, either horizontally, or vertically, to an adjacent point. For each little man, you need to pay a $1 travel fee for every step he moves, unt…
Jamie's Contact Groups Time Limit: 7000MS   Memory Limit: 65536K Total Submissions: 7624   Accepted: 2562 Description Jamie is a very popular girl and has quite a lot of friends, so she always keeps a very long contact list in her cell phone. The con…
March of the Penguins Time Limit: 8000MS   Memory Limit: 65536K Total Submissions: 4809   Accepted: 2195 Description Somewhere near the south pole, a number of penguins are standing on a number of ice floes. Being social animals, the penguins would l…
Dining Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 17251   Accepted: 7643 Description Cows are such finicky eaters. Each cow has a preference for certain foods and drinks, and she will consume no others. Farmer John has cooked fabulo…
题目链接:http://poj.org/problem?id=3498 思路:首先设一个超级源点,将源点与各地相连,边容量为各点目前的企鹅数量,然后就是对每个冰块i进行拆点了(i,i+n),边容量为能够接受的受损程度,这样就把点权问题转化为边权问题了,然后就是对于那些能够相互跳跃的冰块之间连边(i+n,j),(j+n,i),边容量为inf.最后就是枚举汇点看是否等于总数. #include<iostream> #include<cstdio> #include<cstring…
题目链接:http://poj.org/problem?id=3281 看了kuangbin大佬的思路,还用着kuangbin板子orz   http://www.cnblogs.com/kuangbin/archive/2012/08/21/2649850.html #include<cstdio> #include<cstring> using namespace std; ; ; const int INF = 0x3f3f3f3f; struct Edge { int to…