Pagini recente » Cod sursa (job #144235) | Cod sursa (job #1243837) | Cod sursa (job #2223921) | Cod sursa (job #505788) | Cod sursa (job #31113)
Cod sursa(job #31113)
#include <fstream.h>
ifstream f("secv.in");
ofstream g("secv.out");
long n,m,v[5000],t[5000],c[5000],rez=1000000000;
int main()
{
long i,j,k,x;
f>>n;
for(i=0;i<n;i++) { f>>v[i]; t[i]=v[i]; }
for(i=0;i<n;i++)
for(j=i+1;j<n;j++)
if(t[i]>t[j]) x=t[i],t[i]=t[j],t[j]=x;
c[0]=t[0];
m=1;
for(i=1;i<n;i++)
if(t[i]!=t[i-1]) c[m++]=t[i];
for(i=n-1;i>=0;i--) {
if(v[i]==c[m-1]) {
for(k=i,j=m-2;j>=0;j--)
{ while(k>=0 && v[k]!=c[j]) k--;
if(k<0) break; }
if(j==-1 && rez>i-k+1) rez=i-k+1;
}}
if(rez==1000000000) cout<<-1; else cout<<rez;
return 0;
}