Pagini recente » Cod sursa (job #601249) | Cod sursa (job #171710) | Cod sursa (job #937160) | Cod sursa (job #1559406) | Cod sursa (job #638478)
Cod sursa(job #638478)
#include<fstream>
using namespace std;
int n,m,A[1010][1010],lg[1010][1010],Smax;
void Citire()
{
int i,j;
ifstream fin("dreptpal.in");
fin>>n>>m;
for(i=1;i<=n;i++)
for(j=1;j<=m;j++)
fin>>A[i][j];
fin.close();
}
void Rezolvare()
{
int i,j,k,st,dr,minim;
for(i=1;i<=n;i++)
{
for(j=1;j<=m;j++)
{
st=dr=j;
while(st>1 && dr<m && A[i][st-1]==A[i][dr+1])
{
st--;
dr++;
}
lg[i][j]=dr-st+1;
}
}
for(j=1;j<=m;j++)
{
for(i=1;i<=n;i++)
{
minim=lg[i][j];
for(k=i;k<=n;k++)
{
minim=min(minim,lg[k][j]);
Smax=max(Smax,(k-i+1)*minim);
}
}
}
}
void Afisare()
{
ofstream fout("dreptpal.out");
fout<<Smax<<"\n";
fout.close();
}
int main()
{
Citire();
Rezolvare();
Afisare();
return 0;
}