Cod sursa(job #2466824)

Utilizator bogdan2604Bogdan Dumitrescu bogdan2604 Data 2 octombrie 2019 23:21:09
Problema Secv Scor 20
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.79 kb
#include <bits/stdc++.h>

using namespace std;

ifstream f("secv.in");
ofstream g("secv.out");

int n,i,j,poz,sz,marime[5001],v[5001],mn = 2000000001;
map <int,bool> ap;

int main()
{
    f >> n;
    for(i = 1; i <= n; ++ i)
    {
        f >> v[i];
        ap[v[i]] = 1;
        if(v[i] < mn)
        {
            mn = v[i];
            poz = i;
        }
    }
    sz = ap.size();
    for(i = 1; i <= n; ++ i)
        marime[i] = 1;
    for(i = 1; i <= n; ++ i)
        for(j = 1; j < i; ++ j)
            if(v[i] > v[j])
            {
                marime[i] = max(marime[i], marime[j] + 1);
                if(marime[i] == sz)
                {
                    g << i - poz + 1;
                    return 0;
                }
            }
    g << -1;
}