Pagini recente » Cod sursa (job #2558122) | Cod sursa (job #1493507) | Cod sursa (job #655647) | Cod sursa (job #285276) | Cod sursa (job #287021)
Cod sursa(job #287021)
#include<stdio.h>
int teren[301][301];
int sum[301][301];
int n,m,x;
int main()
{
int i,j,s;
int x1,y1,x2,y2,aM = 0;
freopen("teren.in","r",stdin);
freopen("teren.out","w",stdout);
scanf("%d%d%d",&n,&m,&x);
for(i = 0; i < n; i++)
for(j = 0; j < m; j++)
scanf("%d",(*(teren+i)+j));
for(x1 = 0; x1 < n; x1++)
for(y1 = 0; y1 < m; y1++)
for(i = 0; i <= x1; i++)
for(j = 0; j <= y1; j++)
sum[x1][y1] += teren[i][j]; //sume partiale
for(x1 = 0; x1 < n; x1++)
for(y1 = 0; y1 < m; y1++)
for(x2 = x1; x2 < n; x2++)
for(y2 = y1; y2 < m; y2++)
{
s = sum[x2][y2] - sum[x1-1][y2] - sum[x2][y1-1] + sum[x1-1][y1-1];
if(s <= x && aM < (x2-x1+1)*(y2-y1+1))
aM = (x2-x1+1)*(y2-y1+1);
}
printf("%d",aM);
fclose(stdin); fclose(stdout);
return 0;
}