205132026-01-07 15:38:30pirosmacska10Fasor (40)cpp17Elfogadva 40/4029ms1588 KiB
#include <iostream>
#include <vector>
#include <string>
#include <map>
#include <set>
#include <algorithm>
#include <cmath>
#include <queue>
#include <stack>
#include <climits>
using namespace std;

using ll = long long;
const int MOD = 1e9 + 7;

int main() {
    ios::sync_with_stdio(false);
    cin.tie(nullptr);

    int n, k;
    cin >> n >> k;
    vector<int> nums(n);
    for(int i = 0; i < n; i++) {
        cin >> nums[i];
    }

    vector<bool> can_prefix(n, 0);
    deque<int> dq;
    for(int i = 0; i < n; i++) {
        if(dq.empty()) can_prefix[i] = 1;
        else if(nums[dq.front()] <= nums[i]) can_prefix[i] = 1;
        while(!dq.empty() && nums[dq.back()] <= nums[i]) {
            dq.pop_back();
        }
        dq.push_back(i);
        if(dq.front() < i - k) {
            dq.pop_front();
        }
    }
    vector<bool> can_suffix(n, 0);
    dq.clear();
    for(int i = n-1; i >= 0; i--) {
        if(dq.empty()) can_suffix[i] = 1;
        else if(nums[dq.back()] <= nums[i]) can_suffix[i] = 1;
        while(!dq.empty() && nums[dq.front()] < nums[i]) {
            dq.pop_front();
        }
        dq.push_front(i);
        if(dq.back() >= i + k) {
            dq.pop_back();
        }
    }
    bool can = 0;
    for(int i = 0; i < n; i++) {
        if(can_prefix[i] && can_suffix[i]) {
            cout << i+1 << "\n";
            can = 1;
            break;
        }
    }
    if(!can) cout << "-1\n";
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base40/40
1Elfogadva0/01ms316 KiB
2Elfogadva0/02ms316 KiB
3Elfogadva2/21ms316 KiB
4Elfogadva2/21ms316 KiB
5Elfogadva2/21ms316 KiB
6Elfogadva2/21ms316 KiB
7Elfogadva2/21ms316 KiB
8Elfogadva2/21ms316 KiB
9Elfogadva2/22ms316 KiB
10Elfogadva2/23ms464 KiB
11Elfogadva2/22ms316 KiB
12Elfogadva2/22ms500 KiB
13Elfogadva2/213ms1004 KiB
14Elfogadva2/213ms1092 KiB
15Elfogadva2/221ms1476 KiB
16Elfogadva2/223ms1472 KiB
17Elfogadva2/226ms1588 KiB
18Elfogadva2/225ms1220 KiB
19Elfogadva2/226ms1076 KiB
20Elfogadva2/29ms820 KiB
21Elfogadva2/221ms1472 KiB
22Elfogadva2/229ms1216 KiB