Submission

Status:

[PPP-SSSSSSSSSSSSSSSSSSSSS]

Subtask/Task Score:

{0/100}

Score: 0

User: nemuchannnUwU

Problemset: เกาะที่ใหญ่ที่สุด

Language: cpp

Time: 0.002 second

Submitted On: 2026-03-11 22:47:40

#include<bits/stdc++.h>
using namespace std;
int dx[]={1,-1,0,0};
int dy[]={0,0,1,-1};
const int N=172;
int n,m,cnt=0;
vector<vector<char>> grid(N,vector<char>(N));
void solve(int x,int y){
	grid[x][y]='0';
	cnt++;
	for (int i=0;i<4;i++){
		int nx=x+dx[i];
		int ny=y+dy[i];
		if (nx>=0&&nx<n&&ny>=0&&ny<m){
			if (grid[nx][ny]=='1'){
				solve(nx,ny);
			}
		}
	}
}
int main(){
	cin.tie(nullptr)->sync_with_stdio(0);
	cin >> n >> m;
	for (int i=0;i<n;i++){
		for (int j=0;j<m;j++){
			cin >> grid[i][j];
		}
	}
	int mx=INT_MIN;
	for (int i=0;i<n;i++){
		for (int j=0;j<m;j++){
			if (grid[i][j]=='1'){
				cnt=0;
				solve(i,j);
				mx=max(mx,cnt);
			}
		}
	}
	cout << mx;
	
	
}