Pagini recente » Cod sursa (job #1861964) | Cod sursa (job #2628695) | Cod sursa (job #2504308) | Cod sursa (job #609781) | Cod sursa (job #501202)
Cod sursa(job #501202)
#include<stdio.h>
FILE *fin,*fout;
int a[301][301],x,nr,i,j,l,c,nr1,max,t,n,m,st,dr;
int main(){
fin=fopen("teren.in","r");
fout=fopen("teren.out","w");
fscanf(fin,"%d %d %d",&n,&m,&x);
for(i=1;i<=n;i++){
for(j=1;j<=m;j++){
fscanf(fin,"%d",&a[i][j]);
a[i][j]+=a[i][j-1];
}
}
for(j=1;j<=m;j++){
for(i=1;i<=n;i++){
a[i][j]+=a[i-1][j];
}
}
for(i=1;i<=n;i++){
for(j=1;j<=n;j++){
st=1;
for(dr=st;dr<=m;dr++){
nr1=a[j][dr]-a[i-1][dr]-a[j][st-1]+a[i-1][st-1];
if(nr1>x){
if((dr-st)*(j-i+1)>max){max=(dr-st)*(j-i+1);}
dr--;
st++;
}
}
//if((l+1)*(c+1)>max && nr1<=x){max=(l+1)*(c+1);}
if(nr1<=x && (dr-st)*(j-i+1)>max){
max=(dr-st)*(j-i+1);
}
}
}
fprintf(fout,"%d",max);
return 0;}