Pagini recente » Cod sursa (job #893898) | Cod sursa (job #424881) | Cod sursa (job #1951186) | Cod sursa (job #138153) | Cod sursa (job #1571140)
#include<cstdio>
using namespace std;
const int NMAX=5005;
int v[NMAX+5],s[NMAX+5],c[NMAX+5];
int main()
{
FILE *fin, *fout;
fin=fopen("secv.in","r");
fout=fopen("secv.out","w");
int i,j,n,m,r,k=0,t=0;
fscanf(fin,"%d",&n);
for(i=1;i<=n;i++)
{fscanf(fin,"%d",&v[i]);
s[i]=v[i];}
t=1;
while(t>0)
{t=0;
for(i=2;i<=n;i++)
if(s[i]<s[i-1])
{k=s[i-1];
s[i-1]=s[i];
s[i]=k;
t=1;}
}
c[1]=s[1];
j=1;
for(i=2;i<=n;i++)
{if(s[i]!=s[i-1])
{j++;
c[j]=s[i];}}
m=j;
i=1;
t=0;
r=0;
j=1;
while(j<=m)
{while(i<=n)
{if(v[i]==c[j])
{k=i;
i=n;
t++;
}
i++;}
if(t==j)
{i=k+1;
if(j==1)
r=k;
if(j==m)
r=k-r+1;
}
else
j=n;
j++;}
if(t!=m)
r=-1;
fprintf(fout,"%d",r);
return 0;
}