青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品


#include <iostream>
#include 
<queue>
#include 
<algorithm>
#include 
<climits>

using  namespace std;

#define N  210

int  point, edge;
int  graph[N][N];
int  pre[N];
int  result= 0;

void update( int mflow )
{
    
int b= point;
    
    result
+= mflow;
    
while( pre[b]!= 0 )
    
{
        graph[ pre[b] ][ b]
-= mflow;
        graph[b ][ pre[b] ]
+= mflow;
        
        b
= pre[b];
    }
    
}


void bfs()
{
    
whiletrue )
    
{
        
bool visite[N]= false };
        
int  minflow[N];
        queue
<int>  q;
        
        q.push( 
1 );
        visite[
1]= true;
        minflow[
1]= INT_MAX;
        memset( pre, 
0sizeof(pre) );
        
        
while!q.empty() )
        
{
            
int t= q.front();
            q.pop();
            
            
forint j= 1; j<= point; ++j )
                
if!visite[j] && graph[t][j]> 0 )
                
{
                    minflow[j]
= min( minflow[t], graph[t][j] );
                    pre[j]
= t;
                    
                    q.push( j );
                    visite[j]
= true;
                }

            
            
if( pre[point]> 0 ) break;
        }

        
        
if ( pre[point]> 0 )  update( minflow[point] );
        
else                  break;
    }

}


int main()
{
    
while( scanf("%d%d"&edge, &point )!= EOF )
    
{
        memset( graph, 
0sizeof(graph) );
        
        
forint i= 0; i< edge; ++i )
        
{
            
int a, b, d;
            scanf(
"%d%d%d"&a, &b, &d );
            
            graph[a][b]
+= d;    //   not just one ditch
        }

        
        result
= 0;
        bfs();
        printf(
"%d\n", result );
    }

    
    
return 0;
}




#include <stdio.h>
#include 
<stdlib.h>
#include 
<string.h>

#define Min(a,b) ( (a)< (b)?(a): (b) )

int  m, n;
int  map[210][210];
bool visite[210];
int  path[210], dist[210], minflow[210];

int max_flow()
{
    
forint i= 0; i<= n; ++i )
    {
        visite[i]
= false;    dist[i]= 0;
        path[i]
= 1;          minflow[i]= 0;
    }
    
    visite[
1]= true;   minflow[1]= 1<< 30;
    
forint i= 1; i<= n; ++i )
    dist[i]
= map[1][i], minflow[i]= map[1][i];
    
    
forint i= 1; i< n; ++i )
    {
        
int min= 1<< 30, t= -1;
        
        
forint j= 1; j<= n; j++ )
        
if!visite[j] && min> dist[j] && dist[j]> 0 ) min= dist[j],t= j;
        
        
if( t== -1 ) break;
        
        visite[t]
= true;
        
forint j= 1; j<= n; ++j )
            
if!visite[j] && map[t][j]> 0 && 
               ( dist[t]
> 0 && dist[t]+ map[t][j]< dist[j] || dist[j]== 0 ) )
            {
                dist[j]
= dist[t]+ map[t][j];
                path[j]
= t;
                
                minflow[j]
= Min( map[t][j], minflow[t] );
            }
    }
    
    
return minflow[n];
}

int update()
{
    
int f, total= 0;
    
    
while( ( f= max_flow() )!= 0 )
    {
        
int j= n;
        
        
while( path[j]!= j )
        {
            map[ path[j] ][j]
-= f;
            map[j][ path[j] ]
+= f;
            
            j
= path[j];
        }
        
        total
+= f;
    }
    
    
return total;
}

int main()
{
    
while( scanf("%d%d",&m,&n)!= EOF )
    {
        memset( map, 
0sizeof(map) );
        
        
forint i= 0; i< m; ++i )
        {
            
int a, b, c;
            scanf(
"%d%d%d",&a,&b,&c);
            
            map[a][b]
+= c;
        }
        
        printf(
"%d\n", update() );
    }
    
    
return 0;
}



#include <iostream>
#include 
<queue>
#include 
<algorithm>

using namespace std;

int  m, n;
int  map[210][210], h[210],wt[210], flow[210][210];

int max_flow()
{
    memset( wt, 
0sizeof(wt) );
    memset( h, 
0sizeof(h) );
    
    queue
<int> Q;
    Q.push(
1); wt[1]= 1<<30; wt[n]= -1<<30;
    h[
1]= n;
    
    
int total= 0;
    
while!Q.empty() )
    {
        
int u= Q.front(); Q.pop();
        
        
forint v= 1; v<= n; ++v )
        {
            
int f= min( wt[u], map[u][v] );
            
            
if( f> 0 &&  ( u== 1 || h[u]== h[v]+ 1 ) )
            {
                map[u][v]
-= f, map[v][u]+= f;
                wt[u]
-= f, wt[v]+= f;
                
                
if( v== n ) total+= f;
                
                
if( v!= 1 && v!= n ) Q.push(v);
            }
        }            
        
        
if( u!= 1 && u!= n && wt[u]> 0 )
        {
            h[u]
++;
            Q.push(u);
        }
    }
    
    printf(
"%d\n", total );
}
    
int main()
{
    
while( scanf("%d%d",&m,&n)!= EOF )
    {
        memset( map, 
0sizeof(map) );
        
        
forint i= 0; i< m; ++i )
        {    
            
int a, b, c;
            
            scanf(
"%d%d%d",&a,&b,&c);
            map[a][b]
+= c;
        }
        
        max_flow();
    }
    
    
return 0;
}
posted on 2008-11-04 14:15 Darren 閱讀(225) 評論(1)  編輯 收藏 引用

評論:
# re: Pku 1273 Drainage Ditches 2009-01-12 12:02 | 風之傷
謝謝大牛,寫得很清晰,受教了~~  回復(fù)  更多評論
  

只有注冊用戶登錄后才能發(fā)表評論。
網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            久久精品30| 亚洲蜜桃精久久久久久久| 亚洲午夜极品| 欧美日韩在线视频一区二区| 亚洲天堂免费观看| 99re8这里有精品热视频免费| 欧美午夜电影网| 亚洲欧美视频一区二区三区| 午夜免费在线观看精品视频| 伊人精品久久久久7777| 欧美第十八页| 欧美午夜一区二区福利视频| 欧美自拍偷拍午夜视频| 久久精精品视频| 日韩视频在线观看免费| 亚洲欧美国产精品va在线观看| 国产综合色产| 亚洲片在线观看| 国产精品播放| 免费观看成人鲁鲁鲁鲁鲁视频| 欧美精品免费视频| 欧美在线视频导航| 蜜桃av一区二区| 午夜精品久久久久| 美女视频黄免费的久久| 亚洲欧美另类综合偷拍| 久久久噜噜噜久久| 亚洲自拍都市欧美小说| 久久综合激情| 午夜精品成人在线| 欧美国产一区视频在线观看| 欧美在线一二三| 欧美国产日韩二区| 久久视频免费观看| 国产精品av久久久久久麻豆网| 麻豆亚洲精品| 国产精品人人做人人爽人人添| 午夜精品一区二区三区在线| 在线播放视频一区| 亚洲每日在线| 国产综合色在线| 亚洲免费成人av| 一区视频在线| 亚洲欧美电影在线观看| 一本色道久久88精品综合| 久久久国产一区二区三区| 午夜国产精品视频免费体验区| 欧美高清影院| 女同性一区二区三区人了人一| 国产欧美日韩亚洲一区二区三区| 亚洲免费大片| 日韩午夜电影av| 另类专区欧美制服同性| 久久人人爽人人爽爽久久| 国产精品视频一二三| 久久狠狠一本精品综合网| 在线天堂一区av电影| 美日韩免费视频| 欧美顶级艳妇交换群宴| 国语自产偷拍精品视频偷| 亚洲欧美在线看| 欧美一区二区三区精品电影| 欧美香蕉视频| 在线亚洲成人| 亚洲午夜在线| 欧美亚男人的天堂| 一区二区三区 在线观看视| 一区二区三区视频免费在线观看| 欧美国产视频在线观看| 亚洲精品资源美女情侣酒店| 日韩视频一区二区三区| 欧美日韩国产二区| 99热这里只有成人精品国产| 亚洲婷婷在线| 国产欧美另类| 久久久www成人免费毛片麻豆| 老司机成人在线视频| 在线观看日韩av| 欧美成人午夜视频| 亚洲免费观看在线观看| 午夜视频精品| 国产在线精品二区| 久久只精品国产| 亚洲精品乱码久久久久久黑人| 制服诱惑一区二区| 国产情人节一区| 久久蜜桃资源一区二区老牛| 91久久久久久国产精品| 午夜激情综合网| 精品成人在线| 欧美日韩成人激情| 午夜在线观看免费一区| 久久五月天婷婷| 一本色道久久综合一区| 国产欧美日韩精品丝袜高跟鞋| 久久久综合精品| 一本久道久久综合婷婷鲸鱼| 久久久久国色av免费看影院| 日韩午夜三级在线| 国产欧美日本| 欧美激情视频网站| 欧美一区在线视频| 日韩视频二区| 美女亚洲精品| 亚洲一区二区三区激情| 1769国产精品| 国产精品日日摸夜夜添夜夜av| 狂野欧美激情性xxxx欧美| 在线亚洲成人| 欧美激情四色| 久久久一区二区| 一色屋精品视频在线看| 欧美影院在线| 亚洲激情电影中文字幕| 国产精品日本精品| 欧美成年人网| 久久国产视频网站| 亚洲小视频在线| 亚洲国产婷婷| 久热精品视频在线观看一区| 亚洲小视频在线| 亚洲人成亚洲人成在线观看| 国模精品娜娜一二三区| 国产精品美女久久久久久2018 | 亚洲精品欧美专区| 国产九九精品| 国产精品大全| 欧美日韩国产页| 欧美顶级少妇做爰| 久久最新视频| 久久久久久久久久久一区| 亚洲免费在线| 亚洲一区二区三区久久| 一本色道久久99精品综合| 亚洲精品黄色| 91久久综合亚洲鲁鲁五月天| 欧美高清在线一区二区| 欧美成人四级电影| 免费观看欧美在线视频的网站| 久久久久综合一区二区三区| 久久精品成人一区二区三区蜜臀| 亚洲一区中文字幕在线观看| 亚洲制服丝袜在线| 亚洲一区二区四区| 亚洲男人影院| 欧美在线影院| 久久综合国产精品台湾中文娱乐网| 久久国产日韩欧美| 久久久午夜视频| 老色鬼久久亚洲一区二区| 蜜桃av噜噜一区二区三区| 欧美a级大片| 亚洲国产成人久久综合一区| 亚洲精品国产系列| 国产精品99久久久久久久女警 | 久久久91精品国产| 久久综合伊人| 亚洲高清网站| av不卡在线观看| 亚洲欧美日韩国产精品| 久久精品亚洲精品| 免费日韩精品中文字幕视频在线| 欧美黄色免费| 国产精品视频久久| 影音先锋久久| 一级日韩一区在线观看| 欧美一区二区三区在线| 麻豆精品网站| 亚洲卡通欧美制服中文| 亚洲欧美区自拍先锋| 久久久噜噜噜久久| 欧美日韩高清不卡| 国产日产欧产精品推荐色| 亚洲电影免费在线 | 国产亚洲欧美日韩日本| 亚洲福利视频专区| 中文av字幕一区| 久久综合伊人77777| 亚洲免费av观看| 欧美一区成人| 欧美人妖另类| 黄色国产精品| 亚洲一区日韩在线| 免费观看在线综合色| 国产精品99久久久久久白浆小说| 久久久99精品免费观看不卡| 国产精品豆花视频| 亚洲国产精品久久久久婷婷老年 | 欧美黄色成人网| 香蕉久久精品日日躁夜夜躁| 欧美成人精品在线视频| 国内精品久久久久伊人av| 亚洲图片在线| 欧美激情va永久在线播放| 香蕉久久精品日日躁夜夜躁| 欧美日韩国产色站一区二区三区| 伊大人香蕉综合8在线视| 午夜在线精品| 99精品国产福利在线观看免费| 久久亚洲精品中文字幕冲田杏梨|