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

杰 & C++ & Python & DM

圖論最大網絡流(一) POJ 1273 解題報告

        題目鏈接http://acm.pku.edu.cn/JudgeOnline/problem?id=1273
        本題是最大流算法的簡單應用。
        最大網絡流的基本思想很簡單——從某個初始流開始,反復的增加流的流量知道不能再改進為止。最后得到的流將是一個最大流。
        定理P 是網絡 G 中從起點到終點滿足一下條件的一條路徑:
                  (a) 對P中的每條正向邊(i,j)Fij   <  Cij
                 
                (b)對P中的每條反向邊(i,j)Fij    >  0
                 設 D是由P中所有正向邊(i,j)對應的數和P中所有反向邊(i,j)對應的數組成。
                          Δ =min D
         
                                               Fij                   如果(i,j)不在P中
                     F*ij={  FijΔ  如果(i,j)在P中且是正向的
               Fij-Δ   如果(i,j)在P中且不是正向的


   根據上述定理,如果找不到路徑滿足上述定理,那么得到的流便是最大的。我們可以構造一個算法:
   1.從一個流開始;
   2.尋找一個滿足上述定理的路徑,如果這樣的路徑不存在,則停止,流是最大的;
   3.將流過這條路徑的流量增加△,轉到第2行。
   Ford-Fulkerson方法是按照上述定理構造,解決最大流問題的有效方法,一般采用深搜策略;而Edmonds-Karp算法是Ford-Fulkerson方法的廣搜的實現;相對而言,后者的效率稍微高一些。
        
      下面是POJ 1273的代碼,采用的是Edmonds-Karp算法。
   

 1#include <cstdio>
 2#include <queue>
 3const int INF=0x0fffffff;
 4const int SIZE=202;
 5
 6int bfs(int (*mat)[SIZE],int start,int end,int* path)
 7{
 8    int flow[SIZE];//存儲一次BFS遍歷之后流的可改進量;
 9    std::queue<int> q;
10    int i;
11    
12    for(i=0;i<SIZE;++i)
13        path[i]=-1;
14    path[start]=0,flow[start]=INF;
15
16    q.push(start);
17    while(!q.empty())
18    {
19        int top=q.front();
20        q.pop();
21        if(top==end) break;
22        for(i=1;i<=end;++i)
23        {
24            if(i != start && path[i]==-1 && mat[top][i])
25            {
26                flow[i]=flow[top]<mat[top][i] ? flow[top] : mat[top][i];
27                q.push(i);
28                path[i]=top;
29            }

30        }

31    }

32    if(path[end]==-1return -1;
33    return flow[end];
34
35
36}

37int Edmonds_Karp(int (*mat)[SIZE],int start,int end)
38{
39    int maxflow=0,step,cur,pre;
40    int path[SIZE];    ////存儲當前已訪問過的節點的增廣路徑;
41    while((step=bfs(mat,start,end,path)) != -1)//找不到增廣路徑時退出
42    {
43        maxflow += step;
44        cur=end;
45        while(cur != start)
46        {
47            pre=path[cur];
48            mat[pre][cur] -= step;    //更新正向邊的實際容量
49            mat[cur][pre] += step;    //添加反向邊
50            cur=pre;
51        }

52    }

53    return maxflow;
54}

55
56int main()
57{
58    int mat[SIZE][SIZE];
59    int vecNum,edgeNum;
60    int i;
61    int a,b,c;
62    
63    while(scanf("%d%d",&edgeNum,&vecNum)!=EOF)
64    {
65        memset(mat,0,sizeof(mat));
66        for(i=0;i<edgeNum;++i)
67        {
68            scanf("%d%d%d",&a,&b,&c);
69            mat[a][b]+=c;
70        }

71        
72        int re=Edmonds_Karp(mat,1,vecNum);
73        printf("%d\n",re);
74
75    }

76    return 0;    
77}

78

 


 

posted on 2009-04-26 19:18 jaysoon 閱讀(985) 評論(0)  編輯 收藏 引用 所屬分類: ACM/ICPC

<2025年9月>
31123456
78910111213
14151617181920
21222324252627
2829301234
567891011

導航

統計

常用鏈接

留言簿

隨筆分類

隨筆檔案

文章分類

文章檔案

收藏夾

C++

搜索

最新評論

閱讀排行榜

評論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            欧美一级黄色网| 国产欧美三级| 国产亚洲精品成人av久久ww| 一区二区三区偷拍| 亚洲精品免费电影| 久久久久这里只有精品| 欧美成人免费一级人片100| 一区二区视频免费在线观看| 久久久久久久97| 久久久亚洲高清| 久久久精品国产免大香伊 | 亚洲小视频在线观看| 欧美日韩在线一区二区| 国产精品99久久不卡二区| 亚洲一二三四区| 欧美搞黄网站| 亚洲人成啪啪网站| 亚洲一级高清| 午夜视频精品| 久久免费视频在线观看| 亚洲激情图片小说视频| 欧美不卡在线| 欧美精品一区二区三区蜜臀| 国产精品乱码人人做人人爱| 香蕉久久夜色精品| 久久久噜噜噜久久久| 欧美成人dvd在线视频| 国产精品成人免费视频| 欧美成人第一页| 国产精品激情电影| 在线欧美日韩精品| 国产视频在线观看一区二区三区| 欧美精品一区二区三区很污很色的| 国产精品久久777777毛茸茸| 一区二区三区在线高清| 亚洲少妇诱惑| 亚洲精品一区二区三区av| 亚洲一区网站| 亚洲无线观看| 美女图片一区二区| 久久精品电影| 亚洲午夜一区二区三区| 久久久久久9| 亚洲婷婷综合久久一本伊一区| 久久av一区| 先锋影音久久| 91久久嫩草影院一区二区| 美女精品一区| 亚洲一区二区三区欧美| 亚洲一级一区| 久久爱另类一区二区小说| 亚洲第一福利视频| 久久免费国产精品1| 午夜宅男欧美| 亚洲另类一区二区| 9人人澡人人爽人人精品| 亚洲激情视频网| 久久国产精品一区二区三区四区 | 欧美精品成人| 欧美极品一区| 亚洲国产精品一区二区尤物区| 国内精品嫩模av私拍在线观看| 国产欧美日韩91| 亚洲综合色噜噜狠狠| 亚洲精品少妇网址| 欧美日韩国产色视频| 欧美三级视频| 亚洲午夜电影网| 9久re热视频在线精品| 欧美日韩一卡| 国产亚洲综合性久久久影院| 午夜精品久久久久久久久久久| 欧美日韩一区二| 欧美国产视频在线观看| 欧美日韩一区高清| 欧美激情免费观看| 国产欧美一区在线| 欧美一级视频精品观看| 亚洲欧美国产77777| 久久精品夜色噜噜亚洲a∨| 国产美女一区| 在线日韩av| 欧美成人在线影院| 欧美成人精品高清在线播放| 日韩亚洲成人av在线| 亚洲欧美日韩精品在线| 欧美在线高清| 免费日韩视频| 欧美1级日本1级| 国产精品久久久亚洲一区| 性一交一乱一区二区洋洋av| 亚洲欧美伊人| 蜜桃av一区二区| 国产精品www网站| 国产一区二区你懂的| 可以免费看不卡的av网站| 亚洲国产精品成人综合色在线婷婷| 亚洲啪啪91| 欧美午夜不卡视频| 久久精品亚洲一区| 蜜臀久久99精品久久久久久9| 亚洲少妇最新在线视频| 国产欧美精品一区aⅴ影院| 国产婷婷色一区二区三区在线| 六月丁香综合| 国产精品草莓在线免费观看| 久久精品视频亚洲| 欧美粗暴jizz性欧美20| 欧美在线日韩| 欧美国产第一页| 久久久国产精品一区| 欧美精品电影| 久久亚洲国产精品一区二区 | 亚洲精品欧美专区| 亚洲欧美日韩另类| 亚洲精品免费一区二区三区| 亚洲欧美日韩国产一区二区| 亚洲区中文字幕| 久久久久久久一区二区| 欧美精品日韩| 久久夜色精品| 国产毛片一区二区| 日韩亚洲国产欧美| 欧美性一二三区| 欧美黄色视屏| 韩日成人av| 麻豆av一区二区三区| 国产精品a级| 亚洲国产精品一区二区第四页av| 国产欧美精品| 欧美三级乱码| 新片速递亚洲合集欧美合集 | 欧美黑人在线播放| 卡一卡二国产精品| 国模精品一区二区三区| 亚洲影视在线| 亚洲一区二区三区在线看| 欧美福利视频在线观看| 免费短视频成人日韩| 国产综合精品一区| 欧美在线观看网站| 国产在线观看一区| 亚洲深爱激情| 午夜天堂精品久久久久| 国产精品国产成人国产三级| 一本久道久久久| 欧美v日韩v国产v| 美女诱惑黄网站一区| 国产一区二区久久| 久久精品1区| 免费在线日韩av| 免费欧美日韩| 欧美激情欧美激情在线五月| 亚洲福利视频在线| 榴莲视频成人在线观看| 欧美成人精品在线| 亚洲精品社区| 欧美日本久久| 亚洲无人区一区| 中文网丁香综合网| 欧美日韩高清免费| 在线视频你懂得一区二区三区| 国产精品99久久不卡二区| 欧美系列一区| 午夜久久99| 欧美第一黄色网| 亚洲色诱最新| 国产一区清纯| 欧美精品情趣视频| 午夜亚洲性色视频| 久久中文字幕导航| 99国产精品私拍| 国产精品入口麻豆原神| 蜜桃久久精品一区二区| 亚洲国产精品日韩| 欧美视频一区二区三区| 欧美专区福利在线| 欧美激情亚洲自拍| 亚洲综合不卡| 亚洲国产99| 国产精品综合视频| 老司机免费视频久久| 亚洲男人影院| 国内视频一区| 欧美色大人视频| 久久免费视频在线观看| 亚洲午夜av在线| 欧美大片在线看| 欧美在线电影| 一区二区三区三区在线| 欧美va天堂va视频va在线| 欧美日韩中文字幕在线视频| 欧美制服丝袜第一页| 亚洲欧洲精品一区二区三区不卡| 国产精品国产三级国产普通话99| 麻豆91精品| 欧美影院成人| 亚洲一级免费视频| 亚洲人成网站777色婷婷| 午夜精品福利视频|