Run ID 作者 问题 语言 测评结果 分数 时间 内存 代码长度 提交时间
57128 ‬朱宸瑜 家族 C++ 解答错误 10 1 MS 1128 KB 711 2022-08-03 19:58:50

Tests(1/10):


#include<iostream> using namespace std; char map[300][300]; int n,jiazu=1,kuan; int dx[4]={0,1,0,-1}; int dy[4]={1,0,-1,0}; void dfs(int x,int y){ map[x][y]=jiazu; for(int i=0;i<4;i++){ int tx=x+dx[i],ty=y+dy[i]; if(map[tx][ty]==0&&tx<n&&ty<kuan&&tx>=0&&ty>=0){ dfs(tx,ty); } } } int main(){ cin>>n; getchar(); for(int i=0;i<n;i++){ int lkuan=0; for(int j=0;;j++){ char c=getchar(); if(c=='\n') break; else{ if(c=='*'||c==' '){ map[i][j]=-1; } lkuan++; } } kuan=max(kuan,lkuan); } for(int i=0;i<n;i++) for(int j=0;j<kuan;j++) if(map[i][j]==0){ dfs(i,j); jiazu++; } cout<<jiazu-1; return 0; }


测评信息: