博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
POJ 2455 二分+网络流
阅读量:6330 次
发布时间:2019-06-22

本文共 1483 字,大约阅读时间需要 4 分钟。

题意:

这里写图片描述
这里写图片描述
思路:
莫名其妙TLE

啊woc我A了一坨题的网络流模板有问题 !!!!

在常数上会慢 (一个等于号 啊啊啊)
改了所有网络流有关的文章… 。。。。

//By SiriusRen#include 
#include
#include
using namespace std;#define N 90000int n,m,t,xx[N],yy[N],zz[N],l=0x3fffffff,r,Mid,ans;struct Dinic{ int first[205],next[N],w[N],v[N],q[N],tot,vis[205],head,tail; void init(){memset(first,-1,sizeof(first)),tot=0;} void add(int x,int y,int z){ w[tot]=z,v[tot]=y,next[tot]=first[x],first[x]=tot++; w[tot]=0,v[tot]=x,next[tot]=first[y],first[y]=tot++; } bool tell(){ memset(vis,-1,sizeof(vis)); tail=q[0]=1,vis[1]=head=0; while(head
r;i=next[i]) if(w[i]&&vis[v[i]]==vis[x]+1){ int t=zeng(v[i],min(y-r,w[i])); w[i]-=t,w[i^1]+=t,r+=t; } vis[x]=-1; return r; } int flow(){ int temp=0,jy; while(tell())while(jy=zeng(1,0x3fffffff))temp+=jy; return temp; } bool check(int x){ init(); for(int i=1;i<=m;i++) if(zz[i]<=x)add(xx[i],yy[i],1),add(yy[i],xx[i],1); return flow()>=t; }}dinic;int main(){ scanf("%d%d%d",&n,&m,&t); for(int i=1;i<=m;i++) scanf("%d%d%d",&xx[i],&yy[i],&zz[i]),l=min(l,zz[i]),r=max(r,zz[i]); while(l<=r){ Mid=(l+r)>>1; if(dinic.check(Mid))r=Mid-1,ans=Mid; else l=Mid+1; } printf("%d\n",ans);}

这里写图片描述

转载于:https://www.cnblogs.com/SiriusRen/p/6532201.html

你可能感兴趣的文章
1-为 Lync Server 2010 准备 Active Directory 域服务
查看>>
SELinux安全
查看>>
NetBackup下ORACLE恢复测试方案实例解析
查看>>
【有奖征文】“失业”程序员的苦辣酸甜
查看>>
IE9是如何被FireFox4超越全球市场份额的?
查看>>
linux bunzip2命令
查看>>
敏捷个人:通过实践TOGAF来思考如何学习并应用新的方法?
查看>>
Android系统的开机画面显示过程分析(6)
查看>>
vivo Hi-Fi+QQ音乐 数字音乐市场的一剂良方
查看>>
Cocos2d-x 3.2 异步动态加载 -- 保卫萝卜开发总结
查看>>
聚焦触宝反侵权事件:中国创业者用什么护航海外市场大门
查看>>
AOP技术基础
查看>>
Android系统进程间通信(IPC)机制Binder中的Server启动过程源代码分析(2)
查看>>
Lync 小技巧-5-当前已暂停共享
查看>>
无线802.11n 2.4G与5G性能测试
查看>>
子域名信息收集攻略
查看>>
[Android]开发数独游戏思路分析过程
查看>>
SpreadJS 类Excel表格控件 - V12 新特性详解
查看>>
理解并取证:IPv6与IPv4在报文结构上的区别
查看>>
EOS主网上线只是开始,如何运营决定未来
查看>>