Cod sursa(job #701006)

Utilizator ciuscatalincius catalin ciuscatalin Data 1 martie 2012 13:05:00
Problema Teren Scor 80
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.79 kb
#include <fstream>
using namespace std;
ifstream f("teren.in");
ofstream g("teren.out");
int a[330][330], v[400], dr, st, s, t, i, j, k, m, n, l, A, Amax, x;
int main()
{
    f>>n>>m>>k;
    for(i=1; i<=n; i++)
    for(j=1; j<=m; j++)
	f>>a[i][j];
	for(i=1; i<=n; i++)
    for(j=1; j<=m; j++)
    a[i][j]=a[i][j]+a[i][j-1];
    for(i=1; i<=m; i++)
    for(j=i; j<=m; j++)
    {
        st=1;
        s=0;
		for(dr=1; dr<=n; dr++)
        {
            x=a[dr][j]-a[dr][i-1];
            s=s+x;
            while (s>k && dr>=st)
            {
                s=s-(a[st][j]-a[st][i-1]);
                st++;
            }
            if ((j-i+1)*(dr-st+1) > A)
            A=(j-i+1)*(dr-st+1);
        }
    }
    g<<A<<'\n';
    f.close();
    g.close();
    return 0;
}