Pagini recente » Cod sursa (job #93450) | Cod sursa (job #2835730) | Cod sursa (job #1602767) | Cod sursa (job #2964223) | Cod sursa (job #418632)
Cod sursa(job #418632)
#include <stdio.h>
int nr,n,m,x,max,v[301][301],i,j,dr,st;
int main() {
FILE *f=fopen("teren.in","r");
FILE *g=fopen("teren.out","w");
fscanf(f,"%d%d%d",&n,&m,&x);
for(i=1;i<=n;i++)
for(j=1;j<=m;j++){
fscanf(f,"%d",&v[i][j]);
v[i][j]=v[i][j]+v[i-1][j];
}
for(i=1;i<=n;i++)
for(j=i;j<=n;j++) {
st=1;
dr=1;
nr=0;
for(dr=1;dr<=m&&st<=m;dr++)
if(nr+v[j][dr]-v[i-1][dr]<=x)
nr=nr+v[j][dr]-v[i-1][dr];
else {
if(max<(j-i+1)*(dr-st))
max=(j-i+1)*(dr-st);
st++;
if(st<dr){
dr--;}
nr=0;
}
if((j-i+1)*(dr-st)>max)
max=(j-i+1)*(dr-st);
}
fprintf(g,"%d",max);
return 0;
}