• <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>

            M.J的blog

            algorithm,ACM-ICPC
            隨筆 - 39, 文章 - 11, 評論 - 20, 引用 - 0
            數據加載中……

            POJ The Suspects(并查集)

            又是一個并查集,題意大概是N個學生,學生0是SARS疑似,學生分為M組,一個學生可以屬于不同組,只要和疑似學生在一組,自己也就成了疑似,問最后又多少學生是疑似病例。
            Code:

             1 #include<stdio.h>
             2 #define MAX 30002
             3 int m,n;
             4 struct type
             5 {
             6     int father,v;
             7 }a[MAX];
             8 void initial(int n)
             9 {
            10     int i;
            11     for(i=0;i<n;i++){
            12         a[i].father=i;
            13         a[i].v=1;
            14     }
            15 }
            16 int find(int n)
            17 {
            18     if(a[n].father!=n)
            19         return find(a[n].father);
            20     return n;
            21 }
            22 void Union(int root1,int root2)
            23 {
            24     int t1,t2;
            25     t1=find(root1);
            26     t2=find(root2);
            27     if(t1==t2) return ;
            28     if(t1!=t2){
            29         if(a[t1].v<a[t2].v){
            30             a[t1].father=t2;
            31             a[t2].v+=a[t1].v;
            32         }
            33         else{
            34             a[t2].father=t1;
            35             a[t1].v+=a[t2].v;
            36         }
            37     }
            38 }
            39 int main()
            40 {
            41     int cas,i,j,k,p,q,N,M;
            42     while(scanf("%d%d",&N,&M)!=EOF){
            43         if(N==0&&M==0break;
            44         initial(N);
            45         for(i=1;i<=M;i++){
            46             scanf("%d",&k);
            47             scanf("%d",&p);
            48             for(j=2;j<=k;j++){
            49                 scanf("%d",&q);
            50                 Union(p,q);
            51             }
            52         }
            53         k=find(0);
            54         printf("%d\n",a[k].v);
            55     }
            56     
            57 
            58 }

            posted on 2010-04-24 15:06 M.J 閱讀(163) 評論(0)  編輯 收藏 引用

            久久久久久久人妻无码中文字幕爆| 久久久一本精品99久久精品88| 国产精品禁18久久久夂久| 精品国产福利久久久| 日韩电影久久久被窝网| 亚洲AV无码久久寂寞少妇| 99久久99久久久精品齐齐| 日本精品一区二区久久久| 久久久老熟女一区二区三区| 99热精品久久只有精品| 国产精品日韩深夜福利久久| 亚洲综合久久久| 91精品国产9l久久久久| 久久精品国产99久久香蕉| 日日躁夜夜躁狠狠久久AV| 久久精品国产WWW456C0M| 欧美激情精品久久久久| 亚洲AV日韩精品久久久久久| 91精品国产色综久久| 国产精品久久久久jk制服| 狠狠精品久久久无码中文字幕| 精品视频久久久久| 久久91精品国产91久久户| 一本色道久久88精品综合 | 午夜不卡久久精品无码免费| 久久精品无码一区二区三区免费| 久久99国产综合精品| 久久综合综合久久综合| 久久亚洲AV无码精品色午夜| 久久久无码精品午夜| 国产精品久久久99| 精品久久久久久99人妻| 国产精品VIDEOSSEX久久发布 | 精品久久久无码中文字幕| 久久无码av三级| 777久久精品一区二区三区无码| 人人狠狠综合久久88成人| 乱亲女H秽乱长久久久| 久久婷婷五月综合色奶水99啪| 午夜精品久久久久久99热| 99国产精品久久|