42142023-03-16 17:33:55BalintGezaKarácsonyi égőkcpp11Accepted 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;
}
SubtaskSumTestVerdictTimeMemory
subtask10/0
1Accepted3ms1808 KiB
2Accepted3ms2056 KiB
subtask215/15
3Accepted37ms3624 KiB
4Accepted37ms3836 KiB
5Accepted37ms4328 KiB
6Accepted3ms3108 KiB
7Accepted3ms3192 KiB
subtask310/10
8Accepted3ms3200 KiB
9Accepted3ms3200 KiB
10Accepted3ms3284 KiB
11Accepted3ms3288 KiB
12Accepted3ms3236 KiB
subtask420/20
13Accepted3ms3488 KiB
14Accepted3ms3604 KiB
15Accepted3ms3692 KiB
16Accepted3ms3648 KiB
17Accepted3ms3648 KiB
subtask525/25
18Accepted4ms3696 KiB
19Accepted4ms3672 KiB
20Accepted4ms3904 KiB
21Accepted3ms4004 KiB
22Accepted4ms4116 KiB
subtask630/30
23Accepted70ms7012 KiB
24Accepted48ms5600 KiB
25Accepted52ms5584 KiB
26Accepted64ms5952 KiB
27Accepted67ms6388 KiB
28Accepted54ms5604 KiB
29Accepted48ms5688 KiB
30Accepted37ms5680 KiB