自己hack自己

P1767 家族

[测评记录](https://www.luogu.com.cn/record/109355145) 但过不了样例(祭)
by hzoi_Shadow @ 2023-05-01 21:33:23


@[Alex_Wei](/user/123294) 建议把样例加入数据
by zjx331 @ 2023-05-01 21:38:41


离谱
by zjx331 @ 2023-05-01 21:39:37


@[小粉兔](/user/10703)
by hzoi_Shadow @ 2023-05-01 21:41:54


@[The_Shadow_Dragon](/user/848964) 您没考虑空格吧
by CuFeO4 @ 2023-05-01 22:48:20


@[The_Shadow_Dragon](/user/848964) 目测你这行要运行 $n+1$ 遍。 > getline(cin,island[0]);
by STA_Morlin @ 2023-05-02 08:51:18


@[STA_Morlin](/user/347089) so?
by hzoi_Shadow @ 2023-05-02 09:13:03


@[yyx_yyx](/user/752441) 不需要考虑吧?
by hzoi_Shadow @ 2023-05-02 09:13:26


@[yyx_yyx](/user/752441) 改成这个就过了 ```cpp #include<bits/stdc++.h> using namespace std; int lens[501],f1[5]={0,1,-1,0,0},f2[5]={0,0,0,1,-1}; string island[501]; void dfs(int x,int y,int n) { int i,nx,ny; island[x][y]='*'; for(i=1;i<=4;i++) { nx=x+f1[i],ny=y+f2[i]; if(1<=nx&&nx<=n&&0<=ny&&ny<=lens[nx]-1&&'a'<=island[nx][ny]&&island[nx][ny]<='z') { island[nx][ny]='*'; dfs(nx,ny,n); } } } int main() { int n,i,j,ans=0; cin>>n; getline(cin,island[0]); for(i=1;i<=n;i++) { getline(cin,island[i]); lens[i]=island[i].size(); } for(i=1;i<=n;i++) { for(j=0;j<=lens[i]-1;j++) { if('a'<=island[i][j]&&island[i][j]<='z') { ans++; dfs(i,j,n); } } } cout<<ans; return 0; }
by hzoi_Shadow @ 2023-05-02 09:50:56


|