Submission
Status:
[PPPPPPPPPPPPPPPPPPPPPPPPP]
Subtask/Task Score:
{100/100}
Score: 100
User: winwin1054
Problemset: เกาะที่ใหญ่ที่สุด
Language: cpp
Time: 0.007 second
Submitted On: 2026-08-15 21:20:54
#include <bits/stdc++.h>
using namespace std;
int n,m,r,maxx=0;
char grid[171][171];
int count_island(int r,int c) {
if(r<0||r>=n||c<0||c>=m) return 0;
if(grid[r][c]=='0') return 0;
grid[r][c] = '0';
return 1 + count_island(r+1,c) + count_island(r-1,c) + count_island(r,c-1) + count_island(r,c+1);
}
int main() {
ios_base::sync_with_stdio(false);
cin.tie(NULL);
cin >> n >> m;
for (int i = 0; i < n; i++) {
for (int j = 0; j < m; j++) {
cin >> grid[i][j];
}
}
for(int i=0;i<n;i++) {
for(int j=0;j<m;j++) {
if(grid[i][j=='1']) {
r = count_island(i,j);
maxx = max(r,maxx);
}
}
}
cout << maxx;
return 0;
}