Run ID | Author | Problem | Lang | Verdict | Score | Time | Memory | Code Length | Submit Time |
---|---|---|---|---|---|---|---|---|---|
57125 | 朱宸瑜 | 家族 | C++ | Wrong Answer | 0 | 0 MS | 248 KB | 709 | 2022-08-03 19:57:40 |
#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; return 0; }