标签:
1 1 * 3 5 *@*@* **@** *@*@* 1 8 @@****@* 5 5 ****@ *@@*@ *@**@ @@@*@ @@**@ 0 0
0 1 2 2唉,刚开始用字符输出,不知道怎么了输出时结果总是少一行,后来改为字符串输出,才符合要求。#include<stdio.h> #include<cstring> #include<algorithm> using namespace std; char s[105][105]; int a,b,r,ans,q; void f(int x,int y) { if(x<0||x>a-1||y<0||y>b-1) return ; if(s[x][y]=='*') return ; //ans++; s[x][y]='*'; f(x,y+1); f(x,y-1); f(x+1,y); f(x-1,y); f(x-1,y-1); f(x+1,y+1); f(x+1,y-1); f(x-1,y+1); } int main() { int k,x,y,h,e; while(scanf("%d%d",&a,&b),a|b) { getchar(); r=0;k=0;//; int max; q=0; int i,j; //memset(s,0,sizeof(s)); for(i=0;i<a;i++) { scanf("%s",s[i]); } for(i=0;i<a;i++) for(j=0;j<b;j++) if(s[i][j]=='@') { q++; f(i,j); } printf("%d\n",q); } return 0; }
版权声明:本文为博主原创文章,未经博主允许不得转载。
标签:
原文地址:http://blog.csdn.net/l15738519366/article/details/47262179