42232023-03-16 17:42:46MarkopoloKarácsonyi égőkcpp11Elfogadva 100/10071ms7612 KiB
#include<bits/stdc++.h>
using namespace std;
/*
10 4
0 1 3 0 0 1 2 0 2 3
*/
int main()
{
    int n,c,i,sz,h=0,kicsi,nagy,tav,kt; // h a szin vektor kitoltott elemeinek szama
    cin>>n>>c;
    vector<int> szin(c,-1); // ez az indextabla
    vector<int> ego(n);
    for(i=0;i<n;i++)
        cin>>ego.at(i);
    bool t=false;
    for(i=0;i<n;i++)
    {
        sz=ego.at(i);
        if(szin.at(sz)==-1)
        {
            h++;
            szin.at(sz)=i;
            if(h==c) // amiko tele van sz index
            {
                kicsi=*min_element(szin.begin(),szin.end());
                nagy=*max_element(szin.begin(),szin.end());
                t=true;
                tav=nagy-kicsi+1;
                kt=t;
            }
        }
        else if(!t)
            szin.at(sz)=i;
        else if(t && szin.at(sz)==kicsi)
        {
            szin.at(sz)=i;
            kicsi=*min_element(szin.begin(),szin.end());
            nagy=*max_element(szin.begin(),szin.end());
            tav=nagy-kicsi+1;
            if(tav<kt)
                kt=tav;
        }
        else if(t)
        {
            szin.at(sz)=i;
        }
    }
    cout<<tav;
    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
subtask10/0
1Elfogadva3ms1808 KiB
2Elfogadva3ms2000 KiB
subtask215/15
3Elfogadva37ms3436 KiB
4Elfogadva37ms3568 KiB
5Elfogadva37ms3788 KiB
6Elfogadva3ms2652 KiB
7Elfogadva3ms2872 KiB
subtask310/10
8Elfogadva3ms2988 KiB
9Elfogadva3ms3164 KiB
10Elfogadva3ms3368 KiB
11Elfogadva3ms3456 KiB
12Elfogadva3ms3592 KiB
subtask420/20
13Elfogadva3ms3740 KiB
14Elfogadva3ms3848 KiB
15Elfogadva3ms3716 KiB
16Elfogadva3ms3972 KiB
17Elfogadva3ms4048 KiB
subtask525/25
18Elfogadva4ms4352 KiB
19Elfogadva4ms4360 KiB
20Elfogadva4ms4444 KiB
21Elfogadva4ms4364 KiB
22Elfogadva3ms4364 KiB
subtask630/30
23Elfogadva71ms7612 KiB
24Elfogadva48ms6008 KiB
25Elfogadva56ms5988 KiB
26Elfogadva65ms6152 KiB
27Elfogadva68ms6732 KiB
28Elfogadva54ms6020 KiB
29Elfogadva50ms6104 KiB
30Elfogadva37ms6188 KiB