Pagini recente » Cod sursa (job #925275) | Cod sursa (job #2205437) | Cod sursa (job #191117) | Cod sursa (job #2679711) | Cod sursa (job #1742532)
#include <iostream>
#include <fstream>
using namespace std;
ifstream in("teren.in");
ofstream out("teren.out");
const int maxn = 305;
int sp[maxn][maxn];
int main()
{
int n, m, k;
in >> n >> m >> k;
for(int i = 1; i <= n; i++)
{
for(int j = 1; j <= m; j++)
{
bool x;
in >> x;
sp[i][j] = sp[i-1][j] + x;
}
}
int mx = 0;
for(int linst = 1; linst <= n; linst++)
{
for(int linfn = linst; linfn <= n; linfn++)
{
int st = 1;
int sum = 0;
for(int dr = 1; dr <= m; dr++)
{
int p = sp[linfn][dr] - sp[linst - 1][dr];
sum = sum + p;
while(st <= dr && sum > k)
{
sum = sum - (sp[linfn][st] - sp[linst - 1][st]);
st++;
}
if(sum <= k)
mx = max(mx, (dr - st + 1) * (linfn - linst + 1));
}
}
}
out << mx << "\n";
return 0;
}