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

            pku 2492

            2009年7月13日 星期一

            題目鏈接:PKU 2492 A Bug's Life

            分類:并查集的拓展

            題目分析與算法模型 
                     其實可以用pku 1182食物鏈那題的思路做,也使得其合并成一個并查集,記錄與根節點的偏移量(0表示同一性別,1表示不同性別),當然合并兩棵樹的時候根于根節點之間的偏移量的公式需要自己推導一下,呵呵



            Code:

             1
            #include<stdio.h>
             2#define max 2005
             3
             4int n,k,i,j,parent[max],kind[max],a,b,num,p,q,ccase=1;
             5bool f;
             6
             7void init(int n)
             8{
             9    for(j=1;j<=n;j++)
            10    {
            11        parent[j]=-1;
            12        kind[j]=0;
            13    }

            14}

            15int find(int x)
            16{
            17    int t=parent[x];
            18    if(t<0)return x;
            19    parent[x]=find(t);
            20    kind[x]=(kind[x]+kind[t])%2;
            21    return parent[x];
            22}

            23void Union(int x,int y)
            24{
            25    int root1=find(x),root2=find(y);
            26    if(root1==root2)
            27    {
            28        if(kind[x]==kind[y])f=true;
            29    }

            30    else
            31    {
            32        parent[root2]+=parent[root1];
            33        parent[root1]=root2;
            34        kind[root1]=(kind[y]+kind[x]+1)%2;
            35    }

            36}

            37int main()
            38{
            39    scanf("%d",&num);
            40    for(i=0;i<num;i++)
            41    {
            42        f=false;
            43        scanf("%d%d",&p,&q);
            44        init(p);
            45        for(j=0;j<q;j++)
            46        {
            47            scanf("%d%d",&a,&b);
            48            if(!f)Union(a,b);
            49        }

            50        printf("Scenario #%d:\n",ccase++);
            51        if(f)printf("Suspicious bugs found!\n");
            52        else printf("No suspicious bugs found!\n");
            53        printf("\n");
            54    }

            55    return 0;
            56}

            57
            58

            posted on 2009-07-13 00:19 蝸牛也Coding 閱讀(1068) 評論(1)  編輯 收藏 引用

            評論

            # re: pku 2492 2009-07-13 11:58 凡客

            不錯哦!寫得很好  回復  更多評論   

            <2010年8月>
            25262728293031
            1234567
            891011121314
            15161718192021
            22232425262728
            2930311234

            導航

            統計

            常用鏈接

            留言簿(8)

            隨筆檔案(78)

            搜索

            積分與排名

            最新評論

            閱讀排行榜

            評論排行榜

            9久久9久久精品| 久久综合久久综合亚洲| 久久精品视频一| 少妇被又大又粗又爽毛片久久黑人| 97久久香蕉国产线看观看| 伊人久久大香线蕉综合影院首页| 伊人热热久久原色播放www| 精品熟女少妇aⅴ免费久久| 99久久婷婷国产综合精品草原| 久久A级毛片免费观看| 久久精品国产精品亚洲毛片| 久久w5ww成w人免费| 粉嫩小泬无遮挡久久久久久| 97精品国产91久久久久久| 久久久久综合网久久| 久久99精品久久久久久齐齐| 久久性精品| 无码伊人66久久大杳蕉网站谷歌| 久久久久国产精品熟女影院 | 久久久久这里只有精品 | 精品国产乱码久久久久久1区2区| 久久久久久久97| 国产一区二区精品久久凹凸| 中文字幕无码av激情不卡久久| 亚洲精品无码久久久久AV麻豆| 久久狠狠爱亚洲综合影院 | 伊人久久综合精品无码AV专区| 无码日韩人妻精品久久蜜桃 | 久久亚洲高清观看| 一本一道久久a久久精品综合| 国产亚洲精久久久久久无码77777| 精品久久久久久无码专区| 国产福利电影一区二区三区久久老子无码午夜伦不 | 香蕉99久久国产综合精品宅男自 | 久久久久久久综合日本亚洲| 无码乱码观看精品久久| 97久久超碰国产精品旧版| 久久久久久噜噜精品免费直播| 无码人妻久久一区二区三区| 精品国产热久久久福利| 久久久久AV综合网成人|