Pagini recente » Cod sursa (job #28538) | Cod sursa (job #1822591) | Cod sursa (job #2290150) | Cod sursa (job #1946295) | Cod sursa (job #677751)
Cod sursa(job #677751)
#include<fstream>
#include<queue>
using namespace std;
int n,m,x,A,S[301][301];
int i,j,rez;
int l1,l2,suma,nre,a,v;
ifstream f("teren.in");
ofstream g("teren.out");
queue <int> Q;
int main()
{
f>>n;
for(i=1;i<=n;i++)
for(j=1;j<=m;j++)
{
f>>A;
S[i][j]=S[i-1][j]+A;
}
rez=0;
for(l1=1;l1<=n;l1++)
for(l2=l1;l2<=n;l2++)
{
while(!Q.empty())
Q.pop();
nre=suma=0;
for(i=1;i<=m;i++)
{
v=S[l2][i]=S[l1-1][i];
Q.push(v);
nre++;
suma+=v;
while(suma>x)
{
a=Q.front();
Q.pop();
suma-=a;
nre--;
}
if(nre*(l2-l1+1)>rez) rez=nre*(l2-l1+1)>rez;
}
}
g<<rez<<'\n';
f.close();
g.close();
return 0;
}