Pagini recente » Cod sursa (job #210937) | Cod sursa (job #29545) | Cod sursa (job #3193885) | Autentificare | Cod sursa (job #637091)
Cod sursa(job #637091)
# include <fstream>
# include <iostream>
# define DIM 1003
# define max(a,b) (a>b?a:b)
# define shi short int
using namespace std;
shi n, m, a[DIM][DIM], b[DIM][DIM], v[DIM];
int sol;
void read ()
{
ifstream fin ("dreptpal.in");
fin>>n>>m;
for(shi i=1;i<=n;++i)
for(shi j=1;j<=m;++j)
fin>>a[i][j];
}
void solve ()
{
shi s, d;
sol=n;
for(shi i=1;i<=n;++i)
for(shi j=1;j<=m;++j)
{
b[i][j]=1;
s=j-1;d=j+1;
while (s && d<=m && a[i][s]==a[i][d])
--s, ++d, b[i][j]+=2;
sol=max(sol,b[i][j]);
}
shi dr;
for (shi j=1;j<=m;++j)
{
dr=1;
v[dr]=1;
for(int i=2;i<=n;++i)
{
while (b[v[dr]][j]>=b[i][j] && dr)--dr;
if (!dr)sol=max(sol,(int)b[i][j]*i);
else sol=max(sol,(int)b[i][j]*((int)i-v[dr]));
v[++dr]=i;
}
}
}
int main ()
{
read ();
solve ();
ofstream fout ("dreptpal.out");
fout<<sol;
}