#include #include #include #include #include #include #include #include #include #include using namespace std; const int N = 1000; char s[N][N]; int up[N][N]; int main() { int n, m; cin >> n >> m; for(int i = 0; i < n; ++i) scanf("%s", s[i]); for(int j = 0; j < m; ++j) { for(int i = 0; i < n; ++i) { up[i][j] = (i > 0 ? up[i-1][j] : -1) + 1; if(s[i][j] == '0') up[i][j] = -1; } } int ans = 0; for(int i = 0; i < n; ++i) { for(int j1 = 0; j1 < m; ++j1) { if(s[i][j1] == '0' || up[i][j1] <= 0) continue; for(int j2 = j1 + 1; j2 < m; ++j2) { if(s[i][j2] == '0') break; if(up[i][j2] <= 0) continue; ans = max(ans, up[i][j1] + up[i][j2] + j2 - j1 + 1); } } } cout << ans << endl; return 0; } /* */