沧海一声喵 2018-01-22 06:10:29
点我顶贴
收藏
删除
感觉题目的评测数据有问题啊,我这个完全按题意来得,但是居然零分
#include <stdio.h>
int m,n,a[101][101]={0},num=0;
int u[5]={0,-1,1,0,0},v[5]={0,0,0,-1,1};
void f(int s,int t){
int i,s1,t1;
a[s][t]=0;
for(i=1;i<=4;i++){
s1=s+u[i];t1=t+v[i];
if(s1>=1&&s1<=m&&t1>=1&&t1<=n&&a[s1][t1]){
a[s1][t1]=0;
f(s1,t1);}}}
int main(){
int i,j;
char c;
scanf("%d%d",&m,&n);getchar();
for(i=1;i<=m;i++){
for(j=1;j<=n;j++){
c=getchar();
a[i][j]=c-'0';}
getchar();}
for(i=1;i<=m;i++)
for(j=1;j<=n;j++)
if(a[i][j]){
f(i,j);
num++;}
printf("%d",num);
return 0;}