Cod sursa(job #768148)

Utilizator valentina506Moraru Valentina valentina506 Data 16 iulie 2012 10:06:13
Problema Secv Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.68 kb
#include<fstream>
#include<algorithm>
#define inf 5005
using namespace std;
int n,i,j,x,m,nr;
unsigned long a[5001],b[5001];
int main()
{
	ifstream f("secv.in");
    ofstream g("secv.out");
	f>>n;
	for(i=1;i<=n;++i)
	{
		f>>a[i];
		b[i]=a[i];
	}
		sort(&b[1],&b[n+1]);
	m=inf;
	nr=1;
	for(i=2;i<=n;++i)
		if(b[i]!=b[i-1])
		{
			++nr;
			b[nr]=b[i];
		}
		
		/*for(i=1;i<=n;++i)
	{
		x=1;
		for(j=i;j<=n&&x<=nr;++j)
			if(a[j]==b[x])
				++x;
				if(x==nr+1)
					m=j-i+1;
			}
		*/
	for(i=1;i<=n;++i)
	{
		x=1;
		for(j=i;j<=n;++j)
			if(a[j]==b[x])
			{
				++x;
				if(x==nr+1)
					break;
			}
		if(x==nr+1&&j-i+1<m)
			m=j-i+1;
	}
	if(m==inf)
		g<<-1<<"\n";
	else
		g<<m<<"\n";
	return 0;
}