Cod sursa(job #651544)

Utilizator dutzulBodnariuc Dan Alexandru dutzul Data 20 decembrie 2011 19:46:47
Problema Secv Scor 30
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.88 kb
#include <fstream>
#include <algorithm>
using namespace std;
ifstream f("secv.in");
ofstream g("secv.out");
int i,p,qq,n,s,nr[50050],v[50050],lng,we,ok;
int main()
{
  f>>n;
  for(i=1; i<=n; i++)
    {
      f>>v[i];
      nr[i]=v[i];
    }
  sort (nr+1,nr+n+1);

 nr[n+1]=-1;
  for(i=2; i<=n+1; i++)
    {
      if (nr[i]!=nr[i-1])
        {
          s++;
          nr[s]=nr[i-1];
        }
    }

  for(i=s+1; i<=n+1; i++)
    nr[i]=0;
  qq=nr[1];
  lng=555555;



  for(i=1; i<=n; i++)
    {
      p=i+1;
      we=2;
      ok=0;
      if (v[i]==qq)
        while (ok==0||p<=n)
          {
            if (v[p]==nr[we]) we++;
            if (we==s+1)
              {
                lng=min(lng,p-i+1);
                ok=1;
              }
            p++;
          }
    }



g<<lng<<'\n';




  f.close();
  g.close();
  return 0;
}