Cod sursa(job #895094)

Utilizator CostanMiriamCostan Miriam CostanMiriam Data 27 februarie 2013 09:50:50
Problema Teren Scor 70
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.79 kb
#include <fstream>
using namespace std;
ifstream fin ("teren.in");
ofstream fout ("teren.out");
int a[310][310];
int n,m,x,p,u,s,maxim,tot,i,j,c;

int main () {

    fin>>n>>m>>x;
    for (i=1;i<=n;i++)
        for (j=1;j<=m;j++) {
            fin>>c;
            a[i][j]=a[i-1][j]+c;
        }

    for (i=1;i<=n;i++)
       for (j=i;j<=n;j++) {
            u = 1;s=0;p=1;
            while (u<=n) {
               s+=a[j][u]-a[i-1][u];

                while (s>x) {
                        p++;
                        s-=(a[j][p-1]-a[i-1][p-1]);
                }
                tot=(u-p+1)*(j-i+1);
                if (tot>maxim)
                    maxim=tot;

                u++;
            }
        }



    fout << maxim <<"\n";



    return 0;
}