42152023-03-16 17:34:39GaborKarácsonyi égőkcpp11Elfogadva 100/10071ms7212 KiB
#include <iostream>
#include<bits/stdc++.h>
#include<vector>
using namespace std;

int main()
{
    int n,c,i;
    cin>>n>>c;
    vector<int> egok(n);
    vector<int> szinek(c,-1);
    for(i=0;i<n;i++)
        cin>>egok.at(i);

    int hany=0;
    bool tele=false;
    int kicsi,tavolsag,nagy,kistav;
    for(i=0;i<n;i++)
    {
        if(szinek.at(egok.at(i))==-1)
        {
            hany++;
            szinek.at(egok.at(i))=i;
            if(hany==c)
            {
                kicsi=*min_element(szinek.begin(),szinek.end());
                nagy=*max_element(szinek.begin(),szinek.end());
                tele=true;
                tavolsag=nagy-kicsi+1;
                kistav=tavolsag;
            }
        }
        else if(!tele)
            szinek.at(egok.at(i))=i;
        else if(tele&&szinek.at(egok.at(i))==kicsi)
        {
            szinek.at(egok.at(i))=i;
            kicsi=*min_element(szinek.begin(),szinek.end());
            nagy=*max_element(szinek.begin(),szinek.end());
            tavolsag=nagy-kicsi+1;
            if(tavolsag<kistav)
                kistav=tavolsag;
        }
        else if(tele)
            szinek.at(egok.at(i))=i;
    }

    cout<<tavolsag;
    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
subtask10/0
1Elfogadva3ms1812 KiB
2Elfogadva3ms2000 KiB
subtask215/15
3Elfogadva37ms3608 KiB
4Elfogadva37ms3792 KiB
5Elfogadva37ms3756 KiB
6Elfogadva3ms2620 KiB
7Elfogadva3ms2732 KiB
subtask310/10
8Elfogadva3ms2860 KiB
9Elfogadva3ms2980 KiB
10Elfogadva2ms3064 KiB
11Elfogadva3ms3164 KiB
12Elfogadva3ms3248 KiB
subtask420/20
13Elfogadva3ms3252 KiB
14Elfogadva3ms3496 KiB
15Elfogadva3ms3740 KiB
16Elfogadva3ms3984 KiB
17Elfogadva3ms4036 KiB
subtask525/25
18Elfogadva4ms4188 KiB
19Elfogadva4ms4136 KiB
20Elfogadva4ms4228 KiB
21Elfogadva4ms4160 KiB
22Elfogadva3ms4156 KiB
subtask630/30
23Elfogadva71ms7212 KiB
24Elfogadva48ms5816 KiB
25Elfogadva52ms5792 KiB
26Elfogadva67ms6180 KiB
27Elfogadva68ms6728 KiB
28Elfogadva52ms5672 KiB
29Elfogadva48ms5672 KiB
30Elfogadva37ms5804 KiB