Cod sursa(job #2364451)
| Utilizator | Data | 4 martie 2019 08:45:57 | |
|---|---|---|---|
| Problema | Teren | Scor | 50 |
| Compilator | cpp-64 | Status | done |
| Runda | Arhiva de probleme | Marime | 0.92 kb |
#include <bits/stdc++.h>
using namespace std;
ifstream f("teren.in");
ofstream g("teren.out");
int a[301][301],s[301][301];
int main(){
int n,m,i,j,k,amax=0,ar,ii,jj,fi,jf,sum;
f>>n>>m>>k;
for(i=1;i<=n;i++)
for(j=1;j<=m;j++)
f>>a[i][j];
for(i=1;i<=n;i++)
for(j=1;j<=m;j++)
s[i][j]=a[i][j]+s[i-1][j]+s[i][j-1]-s[i-1][j-1];
i=1;
while(i<=n)
{
for(j=1;j<=m;j++)
for(ii=n;ii>=1;ii--)
for(jj=m;jj>=1;jj--)
{
sum=s[ii][jj]-s[i-1][jj]-s[ii][j-1]+s[i-1][j-1];
ar=(ii-i+1)*(jj-j+1);
if( (ar>amax) && (sum<=k) )
{
amax=ar;
j++;
}
}
i++;
}
g<<amax;
}
