• <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>
            隨筆-65  評論-6  文章-0  trackbacks-0
             1 /*
             2 Author:    Leo.W
             3 Descriptipn:    對給定的11個圖進行分類,判斷相鄰圖是否相連,并查集判斷一下就行    
             4 How to Do:    并查集
             5   */
             6 #include <iostream>
             7 #include <string.h>
             8 #include <algorithm>
             9 using namespace std;
            10 struct point{
            11     int no;
            12     int pre;
            13 }unit[2500];
            14 bool field[11][4];
            15 int m,n,sum;
            16 int findSet(int x){
            17     if(unit[x].pre!=x)
            18         unit[x].pre=findSet(unit[x].pre);
            19     return unit[x].pre;
            20 }
            21 void merge(int x,int y){
            22     x=findSet(x);
            23     y=findSet(y);
            24     if(x!=y){
            25         unit[x].pre=y;
            26         sum--;
            27     }
            28 }
            29 void init(){
            30     memset(field,true,sizeof(field));
            31     int i;
            32     for(i=0;i<m*n;i++)
            33         unit[i].pre=i;
            34     field[0][2]=field[0][3]=false;
            35     field[1][0]=field[1][3]=false;
            36     field[2][1]=field[2][2]=false;
            37     field[3][0]=field[3][1]=false;
            38     field[4][0]=field[4][2]=false;
            39     field[5][1]=field[5][3]=false;
            40     field[6][3]=false;
            41     field[7][2]=false;
            42     field[8][1]=false;
            43     field[9][0]=false;
            44 }
            45 int main(){
            46     //freopen("in.txt","r",stdin);
            47     while (scanf("%d%d",&m,&n)!=EOF){
            48         if(m==-1&&n==-1)//行 列
            49             break;
            50         init();
            51         int i,j,k;
            52         char ch;
            53         for(i=0,k=0;i<m;i++)
            54             for(j=0;j<n;j++){
            55                 cin>>ch;
            56                 unit[k].no=ch-'A';
            57                 k++;
            58             }
            59         sum=m*n;
            60         for(i=0;i<m*n;i++){
            61             int no=unit[i].no;
            62             if((i+1)%n!=0){
            63                 if(field[no][2]&&field[unit[i+1].no][0])//右邊與左翼
            64                     merge(i,i+1);
            65             }
            66             if(i%n!=0){
            67                 if(field[no][0]&&field[unit[i-1].no][2])
            68                     merge(i,i-1);
            69             }
            70             if(i-n>=0){
            71                 if(field[no][1]&&field[unit[i-n].no][3])
            72                     merge(i,i-n);
            73             }
            74             if(i+n<m*n){
            75                 if(field[no][3]&&field[unit[i+n].no][1])
            76                     merge(i,i+n);
            77             }
            78         }
            79         printf("%d\n",sum);
            80     }
            81     return 0;
            82 }
            83 
            posted on 2012-03-15 20:17 Leo.W 閱讀(307) 評論(0)  編輯 收藏 引用
            久久久久久亚洲精品影院| 久久久久亚洲AV无码专区桃色 | 亚洲中文字幕伊人久久无码| 久久国产精品国产自线拍免费| 国产精品久久久久jk制服| 色偷偷888欧美精品久久久| 午夜精品久久久久9999高清| 久久久久se色偷偷亚洲精品av| 99久久久精品| 色综合久久夜色精品国产| 久久99久久99小草精品免视看| 久久99精品久久久久久水蜜桃| 亚洲va久久久噜噜噜久久狠狠 | 久久久久国产一区二区三区| 国产精品久久久久蜜芽| 国产高清美女一级a毛片久久w| 一本久道久久综合狠狠爱| 国产精品久久久久一区二区三区 | 久久99精品国产| 久久天天婷婷五月俺也去| 色综合久久天天综合| 久久久久亚洲精品无码蜜桃| 欧美午夜精品久久久久久浪潮| 国产成人综合久久综合| 熟妇人妻久久中文字幕| 国产精品99久久久精品无码| 精品一久久香蕉国产线看播放| 国内精品久久久久影院日本 | 久久久久免费看成人影片| 性做久久久久久免费观看| 99久久国产综合精品五月天喷水 | 久久亚洲精品无码观看不卡| 久久精品国产99国产精偷| 一本色道久久综合狠狠躁| 国产精品久久久久久久人人看| 久久久久久久久久久免费精品| 一本大道加勒比久久综合| 天天综合久久久网| 日本道色综合久久影院| 日本三级久久网| 91久久精品国产成人久久|