41982023-03-16 06:47:39AncsaKarácsonyi égőkcpp11Elfogadva 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;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
subtask10/0
1Elfogadva3ms1812 KiB
2Elfogadva3ms2056 KiB
subtask215/15
3Elfogadva37ms2268 KiB
4Elfogadva37ms2480 KiB
5Elfogadva37ms2560 KiB
6Elfogadva3ms2760 KiB
7Elfogadva3ms2972 KiB
subtask310/10
8Elfogadva3ms3116 KiB
9Elfogadva3ms3200 KiB
10Elfogadva2ms3172 KiB
11Elfogadva3ms3288 KiB
12Elfogadva3ms3532 KiB
subtask420/20
13Elfogadva3ms3612 KiB
14Elfogadva3ms3704 KiB
15Elfogadva3ms3836 KiB
16Elfogadva3ms3880 KiB
17Elfogadva3ms4008 KiB
subtask525/25
18Elfogadva4ms4040 KiB
19Elfogadva4ms3884 KiB
20Elfogadva4ms4008 KiB
21Elfogadva4ms4004 KiB
22Elfogadva3ms4000 KiB
subtask630/30
23Elfogadva92ms6912 KiB
24Elfogadva48ms4076 KiB
25Elfogadva52ms4124 KiB
26Elfogadva71ms4832 KiB
27Elfogadva79ms5568 KiB
28Elfogadva52ms4224 KiB
29Elfogadva48ms4112 KiB
30Elfogadva37ms4228 KiB