Cod sursa(job #1293601)

Utilizator pepsiM4A1Ozturk Arif pepsiM4A1 Data 16 decembrie 2014 09:07:02
Problema Teren Scor 40
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.31 kb
#include <stdio.h>
bool b[301][301];
int a[301][301];
int n,m,x;
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",&b[i][j]);
    }
    for(int i=1;i<=n;i++) 
    {
            for(int j=1;j<=m;j++)
            {
                    a[i][j]=b[i][j]+a[i][j-1];      
            }
    }
    int count=0,sum=0,max=0,xcor;
    for(int i=1;i<=n;i++)
    {
            for(int j=1;j<=m;j++)
            {
                    if(a[i][j]<=x)
                    {
                                  xcor=i+1;
                                  count=a[i][j];
                                  sum=j;
                                  while(a[xcor][j]+count<=x&&xcor<=n)
                                  {
                                                            count+=a[xcor][j];
                                                            sum+=j;
                                                            xcor++;
                                  }
                                  if(max<sum) max=sum;
                    }
            }
    }
    fprintf(fout,"%d ",max);
    fclose(fin);
    fclose(fout);
    return 0;
}