42142023-03-16 17:33:55BalintGezaKarácsonyi égőkcpp11Elfogadva 100/10070ms7012 KiB
#include <bits/stdc++.h>

using namespace std;

int main()
{
    int n, c, i;
    cin>>n>>c;

    vector<int> egok(n);
    vector<int> szinek(c,-1);   //indextabla

    for(i=0;i<n;i++)
        cin>>egok.at(i);

    int hany=0;  //a szinek vektor kitoltott elemeinek a szama
    bool tele=false;
    int kicsi, nagy, tav, kistav;
    for(i=0;i<n;i++)
    {
        int szin=egok.at(i);
        if(szinek.at(szin)==-1)
        {
            hany++;
            szinek.at(szin)=i;
            if(hany==c)
            {
                kicsi=*min_element(szinek.begin(),szinek.end());
                nagy=*max_element(szinek.begin(),szinek.end());
                tele=true;
                tav=nagy-kicsi+1;
                kistav=tav;
            }
        }
        else if(!tele)
        {
            szinek.at(szin)=i;
        }
        else if(tele && szinek.at(szin)==kicsi)
        {
            szinek.at(szin)=i;
            kicsi=*min_element(szinek.begin(),szinek.end());
            nagy=*max_element(szinek.begin(),szinek.end());
            tav=nagy-kicsi+1;
            if(tav<kistav)
            {
                kistav=tav;
            }
        }
        else if(tele)
        {
            szinek.at(szin)=i;
        }
    }
    cout<<tav<<endl;

    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
subtask10/0
1Elfogadva3ms1808 KiB
2Elfogadva3ms2056 KiB
subtask215/15
3Elfogadva37ms3624 KiB
4Elfogadva37ms3836 KiB
5Elfogadva37ms4328 KiB
6Elfogadva3ms3108 KiB
7Elfogadva3ms3192 KiB
subtask310/10
8Elfogadva3ms3200 KiB
9Elfogadva3ms3200 KiB
10Elfogadva3ms3284 KiB
11Elfogadva3ms3288 KiB
12Elfogadva3ms3236 KiB
subtask420/20
13Elfogadva3ms3488 KiB
14Elfogadva3ms3604 KiB
15Elfogadva3ms3692 KiB
16Elfogadva3ms3648 KiB
17Elfogadva3ms3648 KiB
subtask525/25
18Elfogadva4ms3696 KiB
19Elfogadva4ms3672 KiB
20Elfogadva4ms3904 KiB
21Elfogadva3ms4004 KiB
22Elfogadva4ms4116 KiB
subtask630/30
23Elfogadva70ms7012 KiB
24Elfogadva48ms5600 KiB
25Elfogadva52ms5584 KiB
26Elfogadva64ms5952 KiB
27Elfogadva67ms6388 KiB
28Elfogadva54ms5604 KiB
29Elfogadva48ms5688 KiB
30Elfogadva37ms5680 KiB