Pagini recente » Cod sursa (job #2960540) | Cod sursa (job #2193828) | Cod sursa (job #2123639) | Cod sursa (job #689133) | Cod sursa (job #1956008)
#include <fstream>
using namespace std;
ifstream fi("teren.in");
ofstream fo("teren.out");
int n,m,x;
int A[301][301],C[301][301],sum;
int rez,st;
int k;
int main()
{
fi>>n>>m>>x;
for(int i=1;i<=n;i++)
for(int j=1;j<=m;j++)
{
fi>>A[i][j];
C[i][j]=C[i-1][j]+A[i][j];
}
for(int i=1;i<=n;i++)
for(int j=i;j<=n;j++)
{
sum=0;
k=1;
while(true)
{
sum+=C[j][k]-C[i-1][k];
if(sum>x||k==m+1)
{
sum-=C[j][k]-C[i-1][k];
k--;
break;
}
k++;
}
rez=max(rez,(j-i+1)*k);
st=1;
for(;k<=m;k++)
{
sum+=C[j][k]-C[i-1][k];
while(sum>x)
{
sum-=C[j][st]-C[i-1][st];
st++;
}
rez=max(rez,(j-i+1)*(k-st+1));
}
}
fo<<rez;
fi.close();
fo.close();
return 0;
}