Cod sursa(job #1061405)

Utilizator roxannemafteiuMafteiu-Scai Roxana roxannemafteiu Data 19 decembrie 2013 18:40:52
Problema Secv Scor 70
Compilator cpp Status done
Runda Arhiva de probleme Marime 1 kb
#include <stdio.h>
#include <algorithm>
using namespace std;
bool sw;
int n, i, j, k=1, len, MIN=0x3f3f3f3f;
int v[5001], vs[5001], vt[5001];
int p;
int main()
{
    FILE *in,*out;
    in=fopen("secv.in", "rt");
    fscanf(in,"%d",&n);
    for(i=1;i<=n;++i)
    {
        fscanf(in,"%d",&v[i]);
        vs[i]=v[i];
    }
    sort(vs+1, vs+n+1);
    fclose(in);
    vt[1]=vs[1];
    for(i=2; i<=n; ++i)
        if(vs[i]!=vt[k])
            vt[++k]=vs[i];

    for(i=1; i<=n; ++i)
        if(v[i] == vt[1])
        {
            len=1;
            p=2;
            for(j=i+1;j<=n;++j)
            {
                ++len;
                if(v[j] == vt[p])
                    ++p;

                if(p==k+1)
                {
                    if(len<MIN)
                        MIN=len, sw=1;
                    break;
                }
           }
        }
    out=fopen("secv.out", "wt");
    if(sw)
        fprintf(out,"%d\n", MIN);
    fclose(out);
    return 0;
}