Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <bits/stdc++.h>
- using namespace std;
- ifstream fin("terencasa_low.in");
- ofstream fout("terencasa_low.out");
- int s[1001][1001];
- int main() {
- int N, M;
- fin >> N >> M;
- for(int i = 1; i <= N; ++i)
- for(int j = 1; j <= M; ++j) {
- int x;
- fin >> x;
- s[i][j] = s[i][j - 1] + s[i - 1][j] - s[i - 1][j - 1] + x;
- }
- int l = 0, x1 = -1, y1 = -1, x2 = -1, y2 = -1;
- for(int i1 = 1; i1 <= N; ++i1)
- for(int j1 = 1; j1 <= M; ++j1) {
- int dim = l;
- while(i1 + dim <= N && j1 + dim <= M) {
- int i2 = i1 + dim, j2 = j1 + dim;
- int S = s[i2][j2] - s[i2][j1 - 1] - s[i1 - 1][j2] + s[i1 - 1][j1 - 1];
- int L = dim + 1;
- if(S == L * L) {
- if(L > l) {
- l = L;
- x1 = i1;
- y1 = j1;
- x2 = i2;
- y2 = j2;
- }
- }
- else
- break;
- ++dim;
- }
- }
- fout << l << '\n' << x1 << ' ' << y1 << ' ' << x2 << ' ' << y2;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement