zoukankan      html  css  js  c++  java
  • POJ 2455 二分+网络流

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

    啊woc我A了一坨题的网络流模板有问题 !!!!
    在常数上会慢 (一个等于号 啊啊啊)
    改了所有网络流有关的文章… 。。。。

    //By SiriusRen
    #include <cstdio>
    #include <cstring>
    #include <algorithm>
    using namespace std;
    #define N 90000
    int 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<tail){
                int t=q[head++];
                for(int i=first[t];~i;i=next[i])
                    if(w[i]&&vis[v[i]]==-1)
                        vis[v[i]]=vis[t]+1,q[tail++]=v[i];
            }
            return vis[n]!=-1;
        }
        int zeng(int x,int y){
            if(x==n)return y;
            int r=0;
            for(int i=first[x];~i&&y>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
    ",ans);
    }

    这里写图片描述

  • 相关阅读:
    python爬虫之趟雷
    python附录-builtins.py模块str类源码(含str官方文档链接)
    python-基础学习篇(一)
    pycharm和webstorm永久激活方法
    计算机网络基础概述
    计算机基础
    B/S和C/S架构简单理解
    认识HTML中文本、图片、链接标签和路径
    结对开发
    全国疫情可视化地图 (一)
  • 原文地址:https://www.cnblogs.com/SiriusRen/p/6532201.html
Copyright © 2011-2022 走看看