Cod sursa(job #1935426)

Utilizator sichetpaulSichet Paul sichetpaul Data 22 martie 2017 12:47:52
Problema Teren Scor 60
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.69 kb
#include <fstream>

using namespace std;
int s[301][301];
int main()
{  int n,m,i,j,k,ii,jj,aria=0,sum,a,Min;
    ifstream f("teren.in");
    ofstream g("teren.out");
    f>>n>>m>>k;
    for (i=1;i<=n;++i)
    for (j=1;j<=m;++j) {
        f>>a;
        s[i][j]=s[i-1][j]+s[i][j-1]-s[i-1][j-1]+a;
    }
    Min=301;
    for (i=1;i<=n;++i)
    for (j=1;j<=min(Min,m);++j) {
        ii=i;jj=j;
        for (ii=i;ii<=n;++ii)
        for (jj=j;jj<=m;++jj) {
            sum=s[ii][jj]-s[i-1][jj]-s[ii][j-1]+s[i-1][j-1];
            if (sum<=k) aria=max(aria,(ii-i+1)*(jj-j+1));
            else Min=jj;
        }
        if (Min==1) break;
    }
       g<<aria<<"\n";
    return 0;
}