Cod sursa(job #2946471)

Utilizator pifaDumitru Andrei Denis pifa Data 24 noiembrie 2022 21:35:36
Problema Teren Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.78 kb
#include <bits/stdc++.h>

using namespace std;

ifstream in("teren.in");
ofstream out("teren.out");

int n, m, k;

int a[301][301];

int maxim, st, dr;

int main()
{
    in >> n >> m >> k;
    for(int i = 1; i <= n; i++)
    {
        for(int j = 1; j <= m; j++)
        {
            int x;
            in >> x;
            a[i][j] = x + a[i - 1][j] + a[i][j - 1] - a[i - 1][j - 1];
        }
    }
      for (int i = 1; i <= n; i++)
        for (int j = i; j <= n; j++)
            for (int st = 1, dr = 1; dr <= m; dr++){
                while (st <= dr && (a[j][dr] - a[i - 1][dr] - a[j][st - 1] + a[i - 1][st - 1]) > k)
                    st++;
                maxim = max(maxim, (j - i + 1) * (dr - st + 1));
            }
    out << maxim;
    return 0;
}