Pagini recente » Cod sursa (job #1604901) | Cod sursa (job #2051523) | Cod sursa (job #128174) | Cod sursa (job #2811909) | Cod sursa (job #477893)
Cod sursa(job #477893)
#include<fstream>
using namespace std;
const char iname[]="balans.in";
const char oname[]="balans.out";
const int maxn=305;
ifstream f(iname);
ofstream g(oname);
int n,m,r,c,a[maxn][maxn],s[maxn][maxn],i,j,k,p;
double rez=0;
int main()
{
f>>n>>m>>r>>c;
for(i=1;i<=n;++i)
for(j=1;j<=m;++j)
f>>a[i][j],a[i+n][j]=a[i+n][j+m]=a[i][j+m]=a[i][j];
for(i=1;i<=2*n;++i)
for(j=1;j<=2*m;++j)
s[i][j]=s[i-1][j]+s[i][j-1]-s[i-1][j-1]+a[i][j];
for(i=r;i<=n;++i)
for(j=c;j<=m;++j)
for(k=n*2-1;k>=i;--k)
for(p=m*2-1;p>=j;--p)
rez=max(rez,(s[k][p]-s[k-i][p]-s[k][p-j]+s[k-i][p-j])/(1.0*i*j));
g.setf(ios::fixed,ios::floatfield);
g.precision(3);
g<<rez<<"\n";
}