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

The Fourth Dimension Space

枯葉北風(fēng)寒,忽然年以殘,念往昔,語默心酸。二十光陰無一物,韶光賤,寐難安; 不畏形影單,道途阻且慢,哪曲折,如渡飛湍。斬浪劈波酬壯志,同把酒,共言歡! -如夢(mèng)令

SGU 326 Perspective 網(wǎng)絡(luò)流(經(jīng)典競(jìng)賽問題)

題意:有n(<=20)只隊(duì)伍比賽, 隊(duì)伍i初始得分w[i], 剩余比賽場(chǎng)數(shù)r[i](包括與這n只隊(duì)伍以外的隊(duì)伍比賽), mat[i][j]表示隊(duì)伍i與隊(duì)伍j剩余比賽場(chǎng)數(shù), 沒有平局, 問隊(duì)伍0有沒有可能獲得這n隊(duì)中的第一名(可以有并列第一).

做法1:其實(shí)第一個(gè)隊(duì)可以不用管它了,n支隊(duì)我們將它壓縮到n-1。
//球隊(duì)編號(hào)[0,n-2]
//比賽數(shù)[n-1,n-2+id]
//超級(jí)源n-1+id
//超級(jí)匯n+id
//共n+id+1個(gè)點(diǎn)
把n-1只隊(duì)伍作為頂點(diǎn)(把0號(hào)點(diǎn)去掉還剩n-1), 把(i<j)的所有場(chǎng)比賽作為頂點(diǎn)建圖, 設(shè)i和j參加的比賽為c(i,j), 其數(shù)量為num(c(i,j)), 則i, j往c(i,j)連權(quán)值為num(c(i,j))的弧, c(i,j)往匯點(diǎn)也連權(quán)值為num(c(i,j))的弧, 超級(jí)源和每個(gè)隊(duì)伍代表的頂點(diǎn)連流量是w[0]-w[i](w[0]是0號(hào)點(diǎn)贏得剩下所有比賽的得分),最大這樣只要這條往匯點(diǎn)的弧滿流, 則i, j贏的場(chǎng)數(shù)和一定為num(c(i,j)).


理解就是如果滿流,那么所有的比賽可以安排,而且由于s->i已經(jīng)控制了每個(gè)隊(duì)可以贏得的比賽的上界,即使全部流到匯點(diǎn)也不會(huì)超過0號(hào)點(diǎn)的得分。

PS:我記得上次做了個(gè)浙大的題目,貌似和他很像,但是構(gòu)圖方法不一樣,這題可以再研究下。


int mat[maxn][maxn];
int idx[maxn][maxn];
int n;
int w[maxn];
int r[maxn];
int s,t;



//球隊(duì)編號(hào)[0,n-2]
//比賽數(shù)[n-1,n-2+id]
//超級(jí)源n-1+id
//超級(jí)匯n+id
//共n+id+1個(gè)點(diǎn)

//id中返回比賽數(shù)
int id;
int sum=0;
void input(int n)
{
    id
=0;
    sum
=0;
    memset(idx,
-1,sizeof(idx));

    
for(int i=0;i<n;i++)
        scanf(
"%d",&w[i]);
    
for(int i=0;i<n;i++)
        scanf(
"%d",&r[i]);
    
for(int i=0;i<n;i++)
        
for(int j=0;j<n;j++)
            scanf(
"%d",&mat[i][j]);

    
//
    /*
    for(int i=1;i<n;i++)
        w[0]+=mat[0][i];
    for(int i=0;i<n;i++)
        for(int j=0;j<n;j++)
        {
            r[i]-=mat[i][j];
        }
        
*/

    w[
0]+=r[0];
    
//剩下i對(duì)外區(qū)比賽場(chǎng)次

    
for(int i=1;i<n;i++)
        
for(int j=i+1;j<n;j++)
        
{
            idx[i][j]
=id++;
            sum
+=mat[i][j];
        }

    s
=n-1+id;
    t
=n+id;
}






int main()
{
    scanf(
"%d",&n);
    input(n);
    
for(int i=0;i<n+id+1;i++)
        adj[i]
=NULL;
    len
=0;
    
//
    for(int i=1;i<n;i++)
        
for(int j=i+1;j<n;j++)
        
{
                insert(i
-1,idx[i][j]+n-1,mat[i][j]);
                insert(j
-1,idx[i][j]+n-1,mat[i][j]);
                insert(idx[i][j]
+n-1,t,mat[i][j]);
        }

    
for(int i=1;i<n;i++)
        
if(w[0]<w[i])
        
{
            printf(
"NO\n");
            
return 0;
        }

    
for(int i=1;i<n;i++)
        insert(s,i
-1,w[0]-w[i]);
    
    
if(sap(n+id+1,s,t)==sum)
        printf(
"YES\n");
    
else
        printf(
"NO\n");
    
return 0;
}



做法二: 這個(gè)構(gòu)圖更為簡(jiǎn)單直觀(不容易錯(cuò)),不需要再建立比賽的節(jié)點(diǎn),結(jié)點(diǎn)數(shù)O(n).
具體構(gòu)圖方法見http://m.shnenglu.com/abilitytao/archive/2010/07/21/120933.html

int mat[maxn][maxn];
int n;
int w[maxn];
int r[maxn];
int s,t;




//超級(jí)源0
//超級(jí)匯n
//共n+1個(gè)點(diǎn)

int sum;
void input(int n)
{

    sum
=0;
    
for(int i=0;i<n;i++)
        scanf(
"%d",&w[i]);
    
for(int i=0;i<n;i++)
        scanf(
"%d",&r[i]);
    
for(int i=0;i<n;i++)
        
for(int j=0;j<n;j++)
            scanf(
"%d",&mat[i][j]);
    w[
0]+=r[0];
    
//剩下i對(duì)外區(qū)比賽場(chǎng)次
    s=0;
    t
=n;

}






int main()
{
    scanf(
"%d",&n);
    input(n);
    
for(int i=0;i<n+1;i++)
        adj[i]
=NULL;
    len
=0;
    
//
    int arr[maxn];
    memset(arr,
0,sizeof(arr));
    
for(int i=1;i<n;i++)
    
{
        
for(int j=i+1;j<n;j++)
        
{
            arr[i]
+=mat[i][j];
            sum
+=mat[i][j];
        }

        insert(s,i,arr[i]);
    }

    
    
for(int i=1;i<n;i++)
        
if(w[0]<w[i])
        
{
            printf(
"NO\n");
            
return 0;
        }

    
    
for(int i=1;i<n;i++)
        insert(i,t,w[
0]-w[i]);

    
for(int i=1;i<n;i++)
    
{
        
for(int j=i+1;j<n;j++)
        
{
            insert(i,j,mat[i][j]);
        }

    }

    
    
if(sap(t+1,s,t)==sum)
        printf(
"YES\n");
    
else
        printf(
"NO\n");
    
return 0;
}

posted on 2010-11-12 01:03 abilitytao 閱讀(638) 評(píng)論(0)  編輯 收藏 引用


只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。
網(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>
            亚洲欧美日本另类| 正在播放亚洲一区| 日韩一级精品视频在线观看| 在线免费高清一区二区三区| 在线看欧美日韩| 亚洲国产欧美国产综合一区 | 香蕉尹人综合在线观看| 亚洲男人第一av网站| 欧美一区2区视频在线观看| 久久精品91| 欧美xx视频| 欧美视频一区二区三区在线观看| 欧美视频网站| 黄色成人在线| 亚洲一区二区免费| 久久手机免费观看| 亚洲欧洲精品一区二区三区波多野1战4 | 国产精品av一区二区| 国产精品系列在线播放| 精品1区2区3区4区| 一区二区三区高清在线| 久久激情五月激情| 亚洲人成网站999久久久综合| 亚洲免费视频观看| 欧美国产日韩一区| 国产亚洲精久久久久久| 日韩视频一区二区| 久久九九有精品国产23| 亚洲麻豆av| 久久久噜噜噜久久久| 国产精品igao视频网网址不卡日韩| 国产亚洲精品久久飘花| 日韩一区二区精品| 欧美日韩视频在线一区二区| 亚洲黄色小视频| 亚洲在线免费| 欧美激情四色 | 另类欧美日韩国产在线| 日韩视频在线免费观看| 久久久国产91| 国产精品看片资源| 99re6这里只有精品| 久久中文字幕一区| 亚洲欧美日韩在线播放| 欧美亚男人的天堂| 一本色道久久综合精品竹菊| 欧美 日韩 国产 一区| 午夜精品短视频| 欧美视频在线免费| 亚洲免费观看视频| 久久午夜国产精品| 欧美一区=区| 国产欧美一区二区精品性| 国产精品99久久久久久www| 欧美电影在线观看完整版| 久久av一区二区三区| 国产美女精品在线| 欧美影视一区| 亚洲欧美美女| 国产精品进线69影院| 亚洲视频在线观看网站| 亚洲人屁股眼子交8| 欧美精品九九| 一本一本久久| 亚洲美女电影在线| 欧美日韩亚洲一区二区三区四区| 日韩亚洲欧美中文三级| 亚洲国产精品第一区二区| 欧美大片91| 夜夜狂射影院欧美极品| 亚洲精品一区二区网址| 欧美日韩国产黄| 在线视频欧美日韩| 亚洲一二三区在线观看| 国产精品影音先锋| 久久久久久久久伊人| 久久久视频精品| 亚洲精品中文在线| 这里只有精品电影| 国产在线拍揄自揄视频不卡99| 久久久久91| 久久这里只有精品视频首页| 亚洲人成在线影院| 一区二区三区久久精品| 国产日韩精品综合网站| 久久久最新网址| 牛牛国产精品| 亚洲免费影视| 欧美在线精品免播放器视频| 亚洲国产mv| 亚洲日本成人女熟在线观看| 国产欧美91| 久久高清福利视频| 亚洲精华国产欧美| 一区二区三区日韩精品视频| 国产欧美精品一区aⅴ影院| 欧美一区二区观看视频| 久久综合九色| 欧美一区二区久久久| 另类av一区二区| 日韩一区二区精品视频| 性欧美激情精品| 亚洲精选91| 久久精品欧美日韩| 亚洲图片激情小说| 久久久欧美一区二区| 亚洲综合首页| 久久亚洲一区二区三区四区| 亚洲一级电影| 米奇777在线欧美播放| 午夜精品视频一区| 蜜臀91精品一区二区三区| 亚洲一区成人| 欧美激情亚洲综合一区| 久久综合久久综合九色| 国产精品欧美久久久久无广告| 久久午夜色播影院免费高清| 欧美午夜精彩| 亚洲国产欧洲综合997久久| 国产欧美精品日韩| 99国产精品视频免费观看| 亚洲福利国产精品| 亚洲欧美在线x视频| 一区二区动漫| 欧美精品久久久久久久久老牛影院 | 亚洲国产精品久久久久婷婷884| 这里只有视频精品| 亚洲婷婷在线| 欧美色图五月天| 亚洲精品国精品久久99热一| 亚洲国产高清高潮精品美女| 欧美在线短视频| 久久久久久香蕉网| 国产一区二区三区在线观看网站| 一区二区三区 在线观看视| 99国产精品视频免费观看一公开| 麻豆精品网站| 亚洲第一色中文字幕| 亚洲激情影视| 欧美精品成人91久久久久久久| 亚洲第一黄色| 一本大道久久精品懂色aⅴ| 欧美精品v国产精品v日韩精品| 亚洲国产成人久久| 亚洲黄一区二区三区| 久久资源在线| 亚洲国产精品久久久久秋霞蜜臀 | 麻豆精品在线视频| 欧美va天堂在线| 亚洲欧洲在线播放| 欧美另类一区| 正在播放亚洲| 国产主播一区二区三区| 久久久国产一区二区三区| 国产日韩欧美a| 久久久久国产一区二区三区| 久久一区二区三区国产精品| 在线观看一区二区视频| 蜜臀av性久久久久蜜臀aⅴ四虎| 欧美电影打屁股sp| 一区二区电影免费在线观看| 9色国产精品| 久久精品国产一区二区电影| 欧美连裤袜在线视频| 一区二区三区日韩精品视频| 亚洲欧美美女| 久久夜色精品国产欧美乱| 欧美国产视频日韩| 亚洲一区欧美二区| 美女网站在线免费欧美精品| 欧美理论片在线观看| 亚洲精品一级| 久久婷婷人人澡人人喊人人爽| 午夜精品偷拍| 亚洲一区二区日本| 久久看片网站| 亚洲欧洲一级| 国产欧美一区二区精品秋霞影院 | 国内精品久久久久久久影视麻豆| 久久久噜噜噜久久狠狠50岁| 一本久久综合亚洲鲁鲁五月天| 久久不射2019中文字幕| 亚洲欧洲综合| 国内精品免费午夜毛片| 久久av一区二区| 亚洲精品免费看| 国产女优一区| 欧美精品日韩精品| 久久福利影视| 亚洲欧美激情精品一区二区| 亚洲国产精品久久久久秋霞影院 | 午夜伦欧美伦电影理论片| 欧美激情欧美激情在线五月| 欧美影院成年免费版| 在线视频欧美日韩精品| 亚洲精品国产拍免费91在线| 国产综合自拍| 国产亚洲精品7777| 国产欧美在线观看一区| 欧美亚洲成人精品|