HDU3157:Crazy Circuits——题解】的更多相关文章

http://acm.hdu.edu.cn/showproblem.php?pid=3157 题目大意:给一个电路 ,起点为+,终点为-,包括起点终点在内的电元件之间有有下界边,求最小流. ———————————————————————————————— 上下界网络流完结之题,显然是要求最小流的. (然而自从做了上下界网络流之后我发现网上的题解是真的坑……有的人样例都不过就敢把代码粘到网上,有的人最小流做法是错的……) 这里仍然推荐这个人的博客,至少是对的:https://www.cnblogs…
题目大概给一个电路,电路上有n+2个结点,其中有两个分别是电源和负载,结点们由m个单向的部件相连,每个部件都有最少需要的电流,求使整个电路运转需要的最少电流. 容量网络的构建很容易,建好后就是一个有源汇流量有上下界网络的最小流问题,解法如下: 同无源汇上下界网络可行流一样建图,见ZOJ2314,然后从附加源到附加汇跑最大流 连汇点到源点容量INF的边,再从附加源到附加汇跑最大流 最后汇点到源点那条边的流量就是最小流了,因为这条边的流量和源点出发的流量总和相等. 为什么这么做,我也不知道.. #i…
传送门 有源汇的上下界网络流求最小流. 这个其实和上道题差不多--题目描述我没怎么看明白--好像就是让你按照他说的把图建出来就行了,注意这个题的字符处理,可能有长度大于1的字符串,要注意一下.求最小流的话还是先求可行流,之后因为可行流可能流多,而从汇点向原点跑相当于退流.所以我们再从原点向汇点跑一次最大流,两次结果相减就是答案. 然后这个题其实挺奇怪的--辅助源汇点连接的边其实删不删无所谓,HDU的数据不知道行不行--然而POJ这题没数据,交个空程序就能过-- 看一下代码. #include<c…
HDU 3157 Crazy Circuits 题目链接 题意:一个电路板,上面有N个接线柱(标号1~N),还有两个电源接线柱 + -.给出一些线路,每一个线路有一个下限值求一个能够让全部部件正常工作的总电流 没有则输出impossible 思路: 有源汇有上下界求最小流,建模方法为: 按无源汇先建图,跑超级源汇ss->tt一次.然后增加t->s,容量INF的边,在跑一次ss->tt,假设是满流.就有解,解为t->s边的当前流量 顺带写个最大流的,最大流就先把t->s增加直接…
题目:hdoj 3157 Crazy Circuits 题意:如今要制造一个电路板.电路板上有 n 个电子元件,各个元件之间有单向的电流流向.然后有一个 + .电流进入, -- 电流汇入,然后推断能不能让电路板工作,假设能的话求最小电流. 分析:有上下界网络流,求最小流 首先是推断能不可以让电路板工作.能工作的条件就是流量平衡.推断方法前面题目中讲过. 相同先转换为无源汇网络流问题,加入t→ s边权为无穷. 那么最小流不就是在满足全部下界的情况的流么. 即上面提到的,求得SS→ TT的最大流之后…
Crazy Circuits 题目: 给出一个电路板,从+极出发到负极. 如今给你电路板上的最小电流限制,要你在电流平衡的时候求得从正极出发的最小电流. 算法: 非常裸的有源汇最小流.安有源汇最大流做法后,先求出最大流.然后.通过加入 t-->s 容量INF,是其变成一个无源汇最小流问题.这样在跑一次最大流就是结果了.尽管没有严格证明是否正确,可是我用到如今,还没发现有错误的算法. 做题时in[]忘记清空了.找了半个小时!!! /* //!!!!!!!!!!!!!! 一定要注意清空初始化问题.!…
题意:一个电路板,上面有N个接线柱(标号1~N)   还有两个电源接线柱  +  - 然后是 给出M个部件正负极的接线柱和最小电流,求一个可以让所有部件正常工作的总电流. 析:这是一个有源汇有上下界的最小流. 有源汇有上下界最大流: 1.构造附加网络 2.对ss.tt求最大流(ss.tt满流则有解) 3.若有解,对s.t求最大流 有源汇有上下界最小流: 1.构造附加网络(不添加[t,s]边) 2.对ss.tt求最大流 3.添加[t,s]边 4.对ss.tt求最大流 5.若ss.tt满流,则[t,…
Crazy Circuits Time Limit: 2000ms Memory Limit: 32768KB This problem will be judged on HDU. Original ID: 315764-bit integer IO format: %I64d      Java class name: Main You’ve just built a circuit board for your new robot, and now you need to power it…
题目: POJ最近总是炸 所以还是用HDU吧http://acm.hdu.edu.cn/showproblem.php?pid=3157 题解: 题很长,但其实就是给个有源汇带下界网络流(+是源,-是汇),求最小流 求法: 1.模仿可行流建图,但是不加t到s的INF边 2.跑最大流 3.加t到sINF边 4.跑最大流 5.如果两次答案相加不等于sum,无解; 6.如果有解,t到s的反边流量就是答案 #include<cstdio> #include<algorithm> #incl…
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3157 You’ve just built a circuit board for your new robot, and now you need to power it. Your robot circuit consists of a number of electrical components that each require a certain amount of current to…