Cod sursa(job #139077)

Utilizator katakunaCazacu Alexandru katakuna Data 19 februarie 2008 18:09:46
Problema Teren Scor 60
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.81 kb
#include<stdio.h>
int ki,ok,s,ii,jj,n,m,x,max,i,j,a[301][301];

int main(){

FILE *f=fopen("teren.in","r");
fscanf(f,"%d %d %d",&n,&m,&x);

 for(i=1;i<=n;i++){
   for(j=1;j<=m;j++){
   fscanf(f,"%d",&a[i][j]);
   }
 }

fclose(f);




  for(i=1;i<=n;i++){

   for(j=1;j<=m;j++){
   a[0][j]=0;
   }

    for(ii=i;ii<=n;ii++){
    ki=0;
    ok=1;

      for(j=1;j<=m;j++){
      a[0][j]+=a[ii][j];

      }


      for(j=1;j<=m;j++){
      ki=0;
      ok=1;
	for(jj=j;jj<=m;jj++){
	ki+=a[0][jj];

	   if(ki>x&&ok){
	   s=(ii-i+1)*(jj-j+1-1);
	     if(s>max)max=s;
	   ok=0;
	   }

	   if(jj==m&&ki<=x){
	   s=(ii-i+1)*(jj-j+1);
	     if(s>max)max=s;

	   }

	}

      }


    }


  }


FILE *g=fopen("teren.out","w");
fprintf(g,"%d",max);
fclose(g);

return 0;
}