Cod sursa(job #1289032)

Utilizator pepsiM4A1Ozturk Arif pepsiM4A1 Data 9 decembrie 2014 13:27:38
Problema Teren Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.96 kb
#include <stdio.h>
int n,m,x;
int a[301][301];
int main()
{
    FILE *fin,*fout;
    fin=fopen("teren.in","r");
    fout=fopen("teren.out","w");
    fscanf(fin,"%d %d %d",&n,&m,&x);
    for(int i=1;i<=n;i++) 
    {
            for(int j=1;j<=m;j++) fscanf(fin,"%d",&a[i][j]);
    }
    int max=0;
    for(int i=2;i<=m;i++)
    {
            a[1][i]+=a[1][i-1];
    }
    for(int i=2;i<=n;i++)
    {
            for(int j=2;j<=m;j++)
            {
                    a[i][j]=a[i-1][j]+a[i][j-1];
            }
    }
    for(int i=1;i<=n;i++)
    {
            for(int j=1;j<=m;j++)
            {
                    for(int k=j;k<=m;k++)
                    {
                            if(a[i][k]-a[i][j-1]<=x)
                            {
                                                    if(max<i*(k-j+1)) max=i*(k-j+1);
                            }
                    }                
            }
    }
    fprintf(fout,"%d ",max);
}