Cod sursa(job #722995)

Utilizator robertpoeRobert Poenaru robertpoe Data 24 martie 2012 19:32:33
Problema Secv Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.57 kb
#include<fstream>
#include<algorithm>
#define numar 100000
using namespace std;
ifstream f("secv.in");
ofstream g("secv.out");
int n,i,j,x,y,nr=1;
int a[5001],b[5001];
int main()
{
	f>>n;
	for(i=1;i<=n;++i)
	{
		f>>a[i];
		b[i]=a[i];
	}
		sort(&b[1],&b[n+1]);
	y=numar;
	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;++j)
			if(a[j]==b[x])
			{
				++x;
				if(x==nr+1)
					break;
			}
		if(x==nr+1&&j-i+1<y)
			y=j-i+1;
	}
	if(y==numar)
		g<<-1<<"\n";
	else
		g<<y<<"\n";
	return 0;
}