42172023-03-16 17:37:18KicsenKarácsonyi égőkcpp17Hibás válasz 0/1001.564s6900 KiB
#include <bits/stdc++.h>

using namespace std;

int main()
{
    int n,c,i=0,kicsi,nagy;
    cin>>n>>c;
    int y=0,t=n;
    vector<int> a(n),s(c);
    for(i=0;i<n;i++)
        cin>>a.at(i);
    for(i=0;i<c;i++)
        s.at(i)=-1;
    for(i=0;i<n;i++)
    {
        if(s.at(a.at(i))==-1)
        {
            y++;
            s.at(a.at(i))=i;
        }
        else if (y==c)
        {
            s.at(a.at(i))=i;
            if(y==c)
            {
                if(kicsi!=*min_element(s.begin(),s.end()))
                {
                kicsi=*min_element(s.begin(),s.end());
                nagy=*max_element(s.begin(),s.end());
                if (nagy-kicsi+1<t)
                    t=nagy-kicsi+1;
                }
            }
        }
        else
            s.at(a.at(i))=i;
    }
    cout<<t;
    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
subtask10/0
1Elfogadva3ms1688 KiB
2Elfogadva3ms1948 KiB
subtask20/15
3Hibás válasz37ms3304 KiB
4Hibás válasz37ms3496 KiB
5Hibás válasz37ms3688 KiB
6Hibás válasz3ms2468 KiB
7Hibás válasz3ms2552 KiB
subtask30/10
8Elfogadva3ms2796 KiB
9Hibás válasz3ms2916 KiB
10Hibás válasz3ms3136 KiB
11Hibás válasz3ms3352 KiB
12Hibás válasz3ms3700 KiB
subtask40/20
13Hibás válasz3ms3612 KiB
14Hibás válasz3ms3612 KiB
15Hibás válasz3ms3736 KiB
16Hibás válasz3ms3792 KiB
17Hibás válasz3ms3916 KiB
subtask50/25
18Elfogadva4ms4068 KiB
19Hibás válasz6ms3940 KiB
20Hibás válasz8ms4044 KiB
21Hibás válasz3ms4120 KiB
22Hibás válasz3ms4012 KiB
subtask60/30
23Elfogadva70ms6900 KiB
24Hibás válasz228ms5344 KiB
25Hibás válasz64ms5244 KiB
26Időlimit túllépés1.564s4380 KiB
27Hibás válasz474ms6444 KiB
28Hibás válasz180ms5536 KiB
29Hibás válasz90ms5532 KiB
30Hibás válasz37ms5532 KiB