HDU 1198
来源:互联网 发布:自动设计软件 编辑:程序博客网 时间:2024/05/17 22:34
并查集
#include<stdio.h>#include<string.h>#include<algorithm>using namespace std;char map[11][5]={"1010","1001","0110","0101","1100","0011", "1011","1110","0111","1101","1111"}; int a[10001],n,m;char aa[201][201];void init(){int i;for(i=0;i<=n*m;i++){a[i]=i;}}int find(int x){if(x!=a[x]){x=find(a[x]);}return x;}void un(int x,int y){x=find(x);y=find(y);if(x!=y)a[x]=y;}int main(){int i,j,k,l;while(~scanf("%d %d",&m,&n)){if(n==-1&&m==-1)break;init();for(i=0;i<m;i++){scanf("%s",&aa[i]);}for(i=0;i<m;i++){for(j=0;j<n;j++){if(map[aa[i][j]-'A'][0]=='1'&&map[aa[i-1][j]-'A'][1]=='1'&&i-1>=0)un(i*n+j,(i-1)*n+j);if(map[aa[i][j]-'A'][2]=='1'&&map[aa[i][j-1]-'A'][3]=='1'&&j-1>=0)un(i*n+j,i*n+j-1);}}int cnt=0;for(i=0;i<n*m;i++){if(a[i]==i)cnt++;}printf("%d\n",cnt);}return 0;}
0 0
- hdu 1198
- hdu 1198
- hdu 1198
- hdu 1198
- hdu 1198
- hdu 1198
- HDU 1198
- HDU 1198
- hdu 1198
- HDU 1198
- HDU 1198
- hdu 1198
- hdu--1198
- HDU 1198
- HDU - 1198
- hdu 1198
- HDU 1198
- HDU ACM 1198
- SSL与TLS的区别以及介绍
- spark:map mapPartitions flatmap
- swiper的基础教程(十二)
- 动效,动效
- 141. Linked List Cycle
- HDU 1198
- Vitamio 花屏 透明 击穿
- 160630获取wifi ssid
- css tips
- mapreduce(二):wordcount详解
- 贩妖记 > 第六十九章,沈教授
- POJ 2689 Prime Distance
- HDU 1301-Jungle Roads (Kruscal 最小生成树)
- 学OD -- 消息断点 RUN跟踪