Pagini recente » Cod sursa (job #725573) | Cod sursa (job #940738) | Cod sursa (job #1824326) | Cod sursa (job #2049807) | Cod sursa (job #1518016)
#include <fstream>
using namespace std;
int n,m,a[303][303],i,j,ii,jj,nr,p,maxim,s[305][305];
//long long s,ok;
ifstream fin ("teren.in");
ofstream fout ("teren.out");
int main (){
fin>>n>>m>>p;
for (i=1;i<=n;i++){
for (j=1;j<=m;j++){
fin>>a[i][j];
if (a[i][j] == 1)
nr++;
s[i][j] = s[i][j-1]+s[i-1][j]-s[i-1][j-1]+a[i][j];
//fout<<s[i][j]<<" ";
}
//fout<<"\n";
}
maxim = 0;
for (i=1;i<=n;i++)
for (j=1;j<=m;j++)
for (ii=i;ii<=n;ii++)
for (jj=j;jj<=m;jj++){
nr = s[ii][jj]-s[i-1][jj]-s[ii][j-1]+s[i-1][j-1];
if (nr <= p && (ii-i+1)*(jj-j+1) > maxim)
maxim = (ii-i+1)*(jj-j+1);
}
fout<<maxim;
/* for (i=1;i<=n;i++)
for (j=1;j<=m;j++)
for (ii=i;ii<=n;ii++){
for (jj=j;jj<=m;jj++){
s = 0;
for (x=i;x<=ii;x++)
for (y=j;y<=jj;y++)
s+=a[x][y];
if ((ii-i+1)*(jj-j+1) > maxim && s<=p){
maxim = (ii-i+1)*(jj-j+1);
//ok = (ii-i+1)*(jj-j+1);
}
}
}
fout<<maxim;
*/
return 0;
}