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

            2009年7月13日 星期一

            題目鏈接:PKU 1703 并查集的拓展 

            分類:并查集的拓展

            題目分析與算法模型
                    類似于2492,算法基本一樣,細(xì)節(jié)處稍作修改即可,呵呵


            Code:

             1
            #include<stdio.h>
             2#define max 100005
             3
             4int i,j,parent[max],kind[max],t,n,m,a,b;
             5char kk;
             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,char k)
            24{
            25    int root1=find(x),root2=find(y);
            26    if(k=='A')
            27    {
            28        if(root1!=root2)printf("Not sure yet.\n");
            29        else
            30        {
            31            if(kind[x]==kind[y])printf("In the same gang.\n");
            32            else printf("In different gangs.\n");
            33        }

            34    }

            35    else
            36    {
            37        if(root1!=root2)
            38        {
            39            parent[root2]+=parent[root1];
            40            parent[root1]=root2;
            41            kind[root1]=(kind[y]+kind[x]+1)%2;
            42        }

            43    }

            44    
            45}

            46int main()
            47{
            48    scanf("%d",&t);
            49    while(t--)
            50    {
            51        scanf("%d%d",&n,&m);
            52        init(n);
            53        for(i=0;i<m;i++)
            54        {
            55            scanf(" %c%d%d",&kk,&a,&b);
            56            Union(a,b,kk);
            57        }

            58    }

            59    return 0;
            60}

            61
            62

            posted on 2009-07-13 00:27 蝸牛也Coding 閱讀(1080) 評(píng)論(2)  編輯 收藏 引用

            評(píng)論

            # re: pku 1703 2009-07-13 11:57 99讀書人

            不錯(cuò)!!  回復(fù)  更多評(píng)論   

            # re: pku 1703[未登錄] 2009-08-24 17:51 abilitytao

            parent[root2]+=parent[root1];
            這句有點(diǎn)多余 其實(shí)可以刪掉  回復(fù)  更多評(píng)論   


            只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。
            網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


            <2025年6月>
            25262728293031
            1234567
            891011121314
            15161718192021
            22232425262728
            293012345

            導(dǎo)航

            統(tǒng)計(jì)

            常用鏈接

            留言簿(8)

            隨筆檔案(78)

            搜索

            積分與排名

            最新評(píng)論

            閱讀排行榜

            評(píng)論排行榜

            亚洲va久久久噜噜噜久久 | 久久精品中文闷骚内射| 一级a性色生活片久久无| 久久综合久久伊人| 午夜精品久久久久久久| 久久国产精品久久| 欧美麻豆久久久久久中文| 久久久久久亚洲精品成人| 国产成人精品久久| 亚洲国产欧洲综合997久久| 香蕉久久一区二区不卡无毒影院| 久久精品无码一区二区三区免费 | 国产麻豆精品久久一二三| 91精品久久久久久无码| 亚洲精品午夜国产va久久| 久久免费视频网站| 国色天香久久久久久久小说| 久久久精品国产亚洲成人满18免费网站 | 亚洲国产精品无码久久久不卡| 久久精品嫩草影院| 精品综合久久久久久98| 久久久久国色AV免费观看| 情人伊人久久综合亚洲| 久久综合狠狠综合久久综合88| 久久av免费天堂小草播放| 国产精品99久久99久久久| 亚洲国产欧洲综合997久久| 亚洲国产成人久久综合一区77| 94久久国产乱子伦精品免费| 国产成人久久精品一区二区三区| 久久综合久久美利坚合众国| 国产精品国色综合久久| 777午夜精品久久av蜜臀| 91久久精品无码一区二区毛片| 99久久99久久精品国产片果冻| 日本精品久久久久中文字幕| 久久久久久狠狠丁香| 久久久久亚洲精品无码蜜桃| 久久夜色精品国产噜噜亚洲a| 久久国产精品偷99| 亚洲а∨天堂久久精品|