125992024-12-26 16:59:06ruffbrigiFasor (40)cpp17Elfogadva 40/40104ms4928 KiB
#include <iostream>
#include <vector>
#include <set>

using namespace std;

int main()
{
    int n,k,x,ul=0,szb,szj;
    vector<int> magassagok;
    cin>>n>>k;
    szb=-k;
    szj=k;
    set<int> latokor;
    for(int i=0;i<=n-1;i++)
    {
        cin>>x;
        magassagok.push_back(x);
        if(i<=k) latokor.insert(x);
    }
    bool boldog=false;
    while(!boldog && ul<=n-1)
    {
        //cout<<"ul:"<<ul<<" szb:"<<szb<<" szj:"<<szj<<endl;
        auto last = prev(latokor.end());
        //cout<<"last:"<<*last<<endl;
        if(magassagok[ul]==*last) boldog=true;
        else
            {
                ul++;
                szb++;
                szj++;
                if(szb>=0) latokor.erase(magassagok[ul-k-1]);
                if(szj<=n-1) latokor.insert(magassagok[ul+k]);
            }
    }
    if(boldog) cout<<ul+1;
    else cout<<-1;
    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base40/40
1Elfogadva0/01ms320 KiB
2Elfogadva0/04ms500 KiB
3Elfogadva2/21ms320 KiB
4Elfogadva2/21ms320 KiB
5Elfogadva2/21ms320 KiB
6Elfogadva2/21ms336 KiB
7Elfogadva2/21ms320 KiB
8Elfogadva2/22ms320 KiB
9Elfogadva2/24ms504 KiB
10Elfogadva2/24ms320 KiB
11Elfogadva2/24ms432 KiB
12Elfogadva2/23ms384 KiB
13Elfogadva2/239ms948 KiB
14Elfogadva2/235ms1028 KiB
15Elfogadva2/261ms1456 KiB
16Elfogadva2/270ms1352 KiB
17Elfogadva2/275ms1536 KiB
18Elfogadva2/275ms1456 KiB
19Elfogadva2/275ms1556 KiB
20Elfogadva2/223ms1020 KiB
21Elfogadva2/263ms1532 KiB
22Elfogadva2/2104ms4928 KiB