41982023-03-16 06:47:39AncsaKarácsonyi égőkcpp11Accepted 100/10092ms6912 KiB
#include <bits/stdc++.h>
#include <vector>

using namespace std;

/*
be:
10 4
0 1 3 0 0 1 2 0 2 3
ki: 5

be:
11 3
1 1 0 0 2 2 1 1 1 2 2

ki: 4

*/

int main()
{
    int n,c;
    cin>>n>>c;
    vector<int> indexek(c,-1), rendezett(c);

    int uj,index=0,  kicsi, nagy, tav, hany=0;
    bool tele=false;
    for(int i=0;i<n;i++)
    {
        cin>>uj;
        if (indexek.at(uj)==-1)
        {
            hany++;
            indexek.at(uj)=index;
            index++;
            if (hany==c)
            {
                rendezett=indexek;
                sort(rendezett.begin(), rendezett.end());
                nagy=rendezett.at(c-1);
                kicsi=rendezett.at(0);
                tav=nagy-kicsi+1;
                //cout<<index<<"  "<<tav<<endl;
                tele=true;
            }
        }
        else if (! tele)
        {
            indexek.at(uj)=index;
            index++;
        }
        else
        {
            if (indexek.at(uj)==kicsi)
            {
                indexek.at(uj)=index;
                index++;
                rendezett=indexek;
                sort(rendezett.begin(),rendezett.end());
                kicsi=rendezett.at(0);
                nagy=rendezett.at(c-1);
                int ujtav=nagy-kicsi+1;
                if (ujtav<=tav)
                {
                    tav=ujtav;
                    //cout<<index<<"  "<<tav<<endl;
                }
            }
            else
            {
               indexek.at(uj)=index;
               index++;
               nagy++;
            }
        }




    }

    cout << tav ;

    return 0;
}
SubtaskSumTestVerdictTimeMemory
subtask10/0
1Accepted3ms1812 KiB
2Accepted3ms2056 KiB
subtask215/15
3Accepted37ms2268 KiB
4Accepted37ms2480 KiB
5Accepted37ms2560 KiB
6Accepted3ms2760 KiB
7Accepted3ms2972 KiB
subtask310/10
8Accepted3ms3116 KiB
9Accepted3ms3200 KiB
10Accepted2ms3172 KiB
11Accepted3ms3288 KiB
12Accepted3ms3532 KiB
subtask420/20
13Accepted3ms3612 KiB
14Accepted3ms3704 KiB
15Accepted3ms3836 KiB
16Accepted3ms3880 KiB
17Accepted3ms4008 KiB
subtask525/25
18Accepted4ms4040 KiB
19Accepted4ms3884 KiB
20Accepted4ms4008 KiB
21Accepted4ms4004 KiB
22Accepted3ms4000 KiB
subtask630/30
23Accepted92ms6912 KiB
24Accepted48ms4076 KiB
25Accepted52ms4124 KiB
26Accepted71ms4832 KiB
27Accepted79ms5568 KiB
28Accepted52ms4224 KiB
29Accepted48ms4112 KiB
30Accepted37ms4228 KiB