#include using namespace std; typedef long long int ll; typedef double ld; typedef pair ii; typedef vector vi; typedef vector vii; #define PB push_back #define FOR(prom, a, b) for ( ll prom = (a); prom < (ll)(b); ++prom ) #define F(a) FOR(i,0,a) #define FF(a) FOR(j,0,a) #define EPS (1e-10) int q[5001][5001]; int main () { ios::sync_with_stdio(false); ll N; while(cin>>N){ vi aa(N),a(N); F(N)cin>>aa[i]; map m; ll idx=0; F(N){ auto it=m.find(aa[i]); ll r; if(it==m.end()){ r=m[aa[i]]=idx++; }else{ r=it->second; } a[i]=r; } // F(N)cout<=0; --j){ q[i][j]=max(q[i-1][j], q[i][j+1]); if(a[i]==a[j])q[i][j]=max(q[i][j], q[i-1][j+1]+1); } } cout<