Cod sursa(job #1953742)

Utilizator tifui.alexandruTifui Ioan Alexandru tifui.alexandru Data 4 aprilie 2017 23:35:10
Problema Secv Scor 70
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.98 kb
#include <bits/stdc++.h>

using namespace std;
ifstream f("secv.in");
ofstream g("secv.out");
int v[5001];
int s[5001];
struct el{int caut; int poz;};
el a[5001];
int main()
{int n,i,nr=0,minn=2000000001;
f>>n;
for(i=1;i<=n;i++)
{
    f>>v[i];
    if(v[i]<minn)
    {
        nr=1;
        minn=v[i];
        a[1].poz=i;
    }
    else if(v[i]==minn)
            a[++nr].poz=i;
}
sort(v+1,v+n+1);
int j=0;
for(i=1;i<=n;i++)
{
    int x=v[i];
    s[++j]=x;
    while(i<n and v[i+1]==x)
    i++;
}
f.close();
ifstream f("secv.in");
f>>n;
for(i=1;i<=n;i++)
f>>v[i];
int k=j;
for(i=1;i<=nr;i++)
a[i].caut=2;
j=1;
while(true)
{
    ++j;
    for(i=1;i<=nr;i++)
    if(a[i].poz<=n)
    {
        a[i].poz++;
        if(v[a[i].poz]==s[a[i].caut])
        {
            a[i].caut++;
            if(a[i].caut>k)
            {
                g<<j;
                return 0;
            }
        }
        //a[i].poz++;
    }
}

    return 0;
}