Submission
Status:
[PPPPPPPPPPPPPPPPPPPPPPPPP]
Subtask/Task Score:
{100/100}
Score: 100
User: exoworldgd
Problemset: เกาะที่ใหญ่ที่สุด
Language: cpp
Time: 0.003 second
Submitted On: 2026-03-28 09:42:06
#pragma GCC optimize("Ofast,unroll-loops,inline,fast-math,omit-frame-pointer")
#pragma GCC target("avx2,bmi,bmi2,popcnt,lzcnt,tune=native,fma")
#include<bits/stdc++.h>
#define int long long
#define exoworldgd cin.tie(0)->sync_with_stdio(0),cout.tie(0)
using namespace std;
string g[175];
int n,m,vs[175][175],mx,dx[]={-1,0,1,0},dy[]={0,1,0,-1},c;
void dfs(int x,int y){
c++,vs[x][y]=1;
for(int i=0;i<4;i++)if(x>=-dx[i]&&x+dx[i]<n&&y>=-dy[i]&&y+dy[i]<m)if(!vs[x+dx[i]][y+dy[i]]&&g[x+dx[i]][y+dy[i]]-'0')dfs(x+dx[i],y+dy[i]);
}
signed main(void){
exoworldgd;
cin>>n>>m;
for(int i=0;i<n;i++)cin>>g[i];
for(int i=0;i<n;i++)for(int j=0;j<m;j++)if(g[i][j]-'0'&&!vs[i][j])c=0,dfs(i,j),mx=max(mx,c);
cout<<mx;
}