Cod sursa(job #637020)

Utilizator PlayLikeNeverB4George Marcus PlayLikeNeverB4 Data 20 noiembrie 2011 10:07:01
Problema DreptPal Scor 50
Compilator cpp Status done
Runda .com 2011 Marime 0.6 kb
#include <fstream>
#include <algorithm>
using namespace std;

#define MAXN 1024

int A[MAXN][MAXN];
int i,j,k;
int N,M,Amax;
int L[MAXN];

ifstream fin("dreptpal.in");
ofstream fout("dreptpal.out");

int main() {
	fin >> N >> M;
	for(i=0;i<N;i++)
		for(j=0;j<M;j++)
			fin >> A[i][j];
	
	Amax=N;
	for(j=1;j<M-1;j++)
		for(i=0;i<N;i++) {
			for(k=1;k<=j;k++)
				if(A[i][j-k]!=A[i][j+k]) break;
			k--;
			L[i]=2*k+1;
			
			int Min=L[i];
			Amax=max(Amax,L[i]);
			for(int ii=i-1;ii>=0;ii--) {
				Min=min(Min,L[ii]);
				Amax=max(Amax,(i-ii+1)*Min);
			}
		}
	
	fout << Amax;
}