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

Uriel's Corner

Research Associate @ Harvard University / Research Interests: Computer Vision, Biomedical Image Analysis, Machine Learning
posts - 0, comments - 50, trackbacks - 0, articles - 594

POJ 3715 Blue and Red---二分圖匹配

Posted on 2010-08-08 19:34 Uriel 閱讀(421) 評論(0)  編輯 收藏 引用 所屬分類: POJ圖論
想到二分圖,但是不知道那種貪心思想對不對以及如何優(yōu)化。。參考了解題報告

感謝大牛的解題報告:http://hi.baidu.com/liuzhe/blog/item/793e0c24efa6602cd407428a.html

基本上照著寫的,然后加了讀入輸出優(yōu)化,效果驚人。。0MS。。暫時Rank1了。。還是頭一次刷到這么前。。

//Problem: 3715  User: Uriel 
//Memory: 444K  Time: 0MS 
//Language: G++  Result: Accepted
//Bipartite Graph Matching
//Hungary
//2010.08.08

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

short n,m,index;
bool type[205],a[205][205];
short l[205],ln;

struct node{
    
short id;
    node 
*next;
}
*head[205],table[30005];

inline 
void add(int x,int y){
    table[index].id
=y;
    table[index].next
=head[x];
    head[x]
=&table[index];
    index
++;
}


int in()
{
    
char ch;
    
int a=0;
    
while((ch=getchar())==' ' || ch=='\n');
    a
*=10;
    a
+=ch-'0';
    
while((ch=getchar())!=' ' && ch!='\n')
    
{
        a
*=10;
        a
+=ch-'0';
    }

    
return a;
}


void out(int a)
{
    
if(a>=10)out(a/10);
    putchar(a
%10+'0');
}


void Build_Graph(){
    n
=in();m=in();
    
int i;
    ln
=index=0;
    
for(i=1;i<=n;i++){
        type[i]
=in();
        
if(!type[i])l[++ln]=i;
    }

    memset(a,
0,sizeof(a));
    memset(head,
0,sizeof(head));
    
for(i=1;i<=m;i++){
        
int x,y;
        x
=in();y=in();
        
++x,++y;
        
if(type[x]!=type[y] && !a[x][y]){
            a[x][y]
=a[y][x]=1;
            add(x,y);
            add(y,x);
        }

    }

}


short lx[205],ly[205];
bool flag[205],del[205];

bool find(int x){
    flag[x]
=1;
    
for(node *p=head[x];p;p=p->next)
    
if(!flag[p->id] && !del[p->id]){
         flag[p
->id]=1;
         
if(!lx[p->id] || find(lx[p->id])){
             lx[p
->id]=x;
             ly[x]
=p->id;
             
return 1;
         }

    }

    
return 0;
}


bool dfs1(int x){
    flag[x]
=1;
    
for(node *p=head[x];p;p=p->next)
    
if(!flag[p->id] && !del[p->id]){
         flag[p
->id]=1;
         
if(!lx[p->id] || dfs1(lx[p->id]))
         
return 1;
    }

    
return 0;
}


bool dfs2(int x){
    flag[x]
=1;
    
for(node *p=head[x];p;p=p->next)
    
if(!flag[p->id] && !del[p->id]){
         flag[p
->id]=1;
         
if(!ly[p->id] || dfs2(ly[p->id]))
         
return 1;
    }

    
return 0;
}


int hungary(){
    memset(lx,
0,sizeof(lx));
    memset(ly,
0,sizeof(ly));
    
int i,ans=0;
    
for(i=1;i<=ln;i++)
        
if(!del[l[i]]){
            memset(flag,
0,sizeof(flag));
            
if(find(l[i]))ans++;
        }

    
return ans;
}


void Sov(){
    memset(del,
0,sizeof(del));
    
int i,max=hungary();
    
out(max);
    
for(i=1;i<=&& max;i++){
        
if(!lx[i] && !ly[i])continue;
        
else if(lx[i]){
            memset(flag,
0,sizeof(flag));
            del[i]
=1;
            
if(!dfs1(lx[i])){
                max
--;
                ly[lx[i]]
=0;
                putchar(
' ');
                
out(i-1);
            }

            
else
                del[i]
=0;
        }

        
else if(ly[i]){
            memset(flag,
0,sizeof(flag));
            del[i]
=1;
            
if(!dfs2(ly[i])){
                max
--;
                lx[ly[i]]
=0;
                putchar(
' ');
                
out(i-1);
            }

            
else
                del[i]
=0;
        }

    }

    puts(
"");
}


int main(){
    
int t;
    t
=in();
    
while(t--){
         Build_Graph();
         Sov();
    }

    
return 0;
}

神一樣的讀入輸出優(yōu)化~~~

PS:圖論的建圖還是糾結,但是悲劇的是比賽的時候往往遇到稍微麻煩點的圖論還沒開始糾結比賽就已經over了,總是卡水題,悲劇啊
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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性久久久久蜜臀aⅴ四虎 | 亚洲深夜激情| 欧美不卡一卡二卡免费版| 欧美成人a视频| 国产精品v一区二区三区| 欧美亚洲免费高清在线观看| 欧美黄色网络| 亚洲欧美www| 亚洲欧洲一区二区三区久久| 欧美日韩aaaaa| 欧美在线视频观看| 妖精成人www高清在线观看| 欧美 亚欧 日韩视频在线| 免费观看久久久4p| 在线成人小视频| 久久精品亚洲一区二区| 亚洲乱亚洲高清| 免费成人激情视频| 亚洲黄色免费网站| 开心色5月久久精品| 午夜精品美女自拍福到在线| 最新高清无码专区| 亚洲第一福利在线观看| 国产一二三精品| 国产精品成av人在线视午夜片| 国产精品日本欧美一区二区三区| 欧美日韩亚洲一区二区三区四区 | 免费观看亚洲视频大全| 销魂美女一区二区三区视频在线| 亚洲精品你懂的| 久久青草欧美一区二区三区| 久久电影一区| 香蕉久久夜色精品| 午夜亚洲精品| 欧美激情中文不卡| 欧美成年人视频| 亚洲制服少妇| 欧美成人免费全部| 国内精品久久久久影院 日本资源| 国产精品嫩草99av在线| 欧美日韩国产综合新一区| 国产亚洲精品久久久久久| 一区二区欧美日韩视频| 国产精品99久久99久久久二8 | 欧美精品aa| 欧美人妖在线观看| 欧美日韩在线看| 亚洲国产免费| 日韩视频在线观看一区二区| 亚洲精品精选| 亚洲视频axxx| 亚洲国产精品久久久久秋霞蜜臀| 午夜精品视频在线观看一区二区 | 亚洲图片欧洲图片av| 这里只有精品视频| 午夜欧美精品| 国产精品99一区| 99re成人精品视频| 亚洲国产日韩精品| 欧美jizzhd精品欧美喷水 | 国产精品国内视频| 国产一区二区三区久久精品| 午夜日韩在线观看| 亚洲欧美激情一区二区| 国产精品一区久久久久| 亚洲国产欧美日韩| 欧美成人亚洲成人日韩成人| 在线天堂一区av电影| 欧美日韩日韩| 午夜亚洲性色视频| 欧美一区二区三区免费观看视频| 国产日产高清欧美一区二区三区| 亚洲成人在线视频播放| 欧美11—12娇小xxxx| 久久综合给合久久狠狠色 | 国产精品视频导航| 久久久97精品| 亚洲最新合集| 国产精品一区二区女厕厕| 久久久噜噜噜| 免费精品99久久国产综合精品| 亚洲区在线播放| 日韩图片一区| 欧美激情一区二区| 亚洲一区二区三区精品在线| 老司机午夜免费精品视频| 久久久久久亚洲综合影院红桃| 国产精品久久久久久超碰 | 99国产精品久久久| 国产日韩视频一区二区三区| 亚洲夜晚福利在线观看| 亚洲免费影院| 在线观看欧美日韩| 亚洲精品日韩久久| 国产真实乱偷精品视频免| 欧美1区2区3区| 国产精品二区二区三区| 久久美女性网| 国产精品久在线观看| 欧美承认网站| 国产视频精品va久久久久久| 欧美激情第9页| 国产模特精品视频久久久久| 欧美1区2区| 国产伦精品一区二区三区照片91| 美女在线一区二区| 国产精品久久久久久久久久免费| 久久婷婷久久| 久久久亚洲影院你懂的| 一区二区三区免费网站| 老司机aⅴ在线精品导航| 欧美激情精品久久久久久| 欧美一区二区黄| 亚洲欧美日韩在线不卡| 欧美日韩精品一区二区| 久久久久国产精品一区三寸| 欧美日韩调教| 亚洲国产99精品国自产| 欧美成人精品1314www| 国产精品视频xxxx| 亚洲欧美第一页| 亚洲精品一区在线观看香蕉| 国产三级欧美三级日产三级99| 亚洲精品一区二| 亚洲电影专区| 亚洲国产女人aaa毛片在线| 国户精品久久久久久久久久久不卡| 亚洲毛片视频| 一区二区三区产品免费精品久久75 | 国产资源精品在线观看| 夜夜嗨av一区二区三区网站四季av| 亚洲激情欧美激情| 免费成人高清| 欧美韩日一区| 亚洲国产精品一区二区久 | 久久精品麻豆| 久久人人超碰| 激情av一区| 亚洲国产精品一区二区第一页| 国模大胆一区二区三区| 性欧美大战久久久久久久久| 午夜免费日韩视频| 国产美女一区| 欧美在线日韩| 免费成人高清视频| 在线观看国产欧美| 麻豆国产va免费精品高清在线| 欧美高清在线观看| 日韩西西人体444www| 欧美日韩精品三区| 亚洲一线二线三线久久久| 在线播放中文字幕一区| 欧美在线观看天堂一区二区三区 | 99re6这里只有精品| 欧美日韩直播| 欧美激情中文字幕乱码免费| 亚洲人成人99网站| 欧美日韩激情网| 亚洲视频 欧洲视频| 久久精品国产久精国产一老狼| 欧美日韩国产免费观看| 亚洲视频综合| 久久久免费精品| 亚洲精品少妇| 国产午夜精品一区二区三区视频 | 亚洲伦伦在线| 亚洲欧美国产毛片在线| 久久久综合视频| 亚洲人体偷拍| 国产精品伦子伦免费视频| 久久高清一区| 久久国内精品自在自线400部| 国产美女一区二区| 欧美成人影音| 亚洲欧美伊人| 欧美韩日亚洲| 久久精品女人| 亚洲伊人伊色伊影伊综合网| 欧美国产一区在线| 亚洲一区二区三区四区中文| 美女成人午夜| 欧美一区成人| 一区二区激情| 91久久国产精品91久久性色| 国产精品一区二区三区久久| 欧美精品在线观看一区二区| 欧美在线中文字幕| 一区二区三区**美女毛片| 一区二区毛片| 激情欧美丁香| 国产乱码精品一区二区三区忘忧草| 欧美成人xxx| 久久久国产精品亚洲一区| 中文亚洲免费| 日韩一级片网址| 亚洲人久久久| 亚洲国产成人精品视频| 美女诱惑一区| 噜噜噜91成人网| 久久九九全国免费精品观看|