123772024-12-14 13:07:34helloworldFasor (40)cpp17Hibás válasz 0/401ms508 KiB
#include <iostream>
#include <fstream>
#include <deque>
#include <vector>
using namespace std;

int main() {
    ifstream input("input.txt");
    ofstream output("output.txt");

    int N, K;
    input >> N >> K;

    vector<int> heights(N);
    for (int i = 0; i < N; i++) {
        input >> heights[i];
    }

    deque<int> dq;
    for (int i = 0; i < N; i++) {
        while (!dq.empty() && dq.front() < i - K) {
            dq.pop_front();
        }

        while (!dq.empty() && heights[dq.back()] <= heights[i]) {
            dq.pop_back();
        }

        dq.push_back(i);

        if (heights[dq.front()] <= heights[i]) {
            output << i + 1 << endl;
            return 0;
        }
    }

    output << -1 << endl;
    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base0/40
1Hibás válasz0/01ms320 KiB
2Hibás válasz0/01ms320 KiB
3Hibás válasz0/21ms508 KiB
4Hibás válasz0/21ms500 KiB
5Hibás válasz0/21ms320 KiB
6Hibás válasz0/21ms500 KiB
7Hibás válasz0/21ms320 KiB
8Hibás válasz0/21ms332 KiB
9Hibás válasz0/21ms388 KiB
10Hibás válasz0/21ms320 KiB
11Hibás válasz0/21ms320 KiB
12Hibás válasz0/21ms320 KiB
13Hibás válasz0/21ms320 KiB
14Hibás válasz0/21ms320 KiB
15Hibás válasz0/21ms360 KiB
16Hibás válasz0/21ms388 KiB
17Hibás válasz0/21ms320 KiB
18Hibás válasz0/21ms320 KiB
19Hibás válasz0/21ms320 KiB
20Hibás válasz0/21ms320 KiB
21Hibás válasz0/21ms324 KiB
22Hibás válasz0/21ms508 KiB