176492025-08-24 16:18:53algoproFasor (40)cpp17Wrong answer 30/4075ms2340 KiB
// UUID: 7b068523-6d42-4555-831f-1e19a1fbc775
#include <bits/stdc++.h>
using namespace std;

int main() {
	int n, k, semmi=0;
    cin >> n >> k;
    vector<int> magas(n+1), nagy;
    for(int i=1; i<=n; i++){
        cin >> magas[i];
    }
    for(int i=0; i<=n-k; i+=k){
        int ln=magas[i+1];
        for(int j=i+1; j<=i+k; j++){
            if (magas[j] > ln) ln=magas[j];
        }
        for(int l=i+1; l<=i+k; l++){
            if (magas[l] == ln) nagy.push_back(l);
        }
    }
    if ((n/k)*k < n){
    int ln=magas[(n/k)*k+1];
    for(int i=(n/k)*k+1; i<=n; i++){
        if (magas[i] > ln) ln=magas[i];
     for(int j=(n/k)*k+1; i<=n; i++){
         if (magas[j] == ln) nagy.push_back(j);
     }   
    }}
    for (int i=0; i<nagy.size()-1; i++){
        int j=i+1;
        while (nagy[j]-nagy[i] <= k){
            if (magas[nagy[j]]-magas[nagy[i]] > 0) break;
            else if (j < nagy.size()-1) j++;
                else {cout << nagy[i]; return 0;}
        }
        if (nagy[j]-nagy[i] <= k && magas[nagy[j]]-magas[nagy[i]] > 0 && i < nagy.size()-2) semmi++;
        else if (nagy[j]-nagy[i] <= k && magas[nagy[j]]-magas[nagy[i]] > 0) {cout << nagy[j]; return 0;}
           else {cout << nagy[i]; return 0;}
    }
    
}
SubtaskSumTestVerdictTimeMemory
base30/40
1Accepted0/01ms500 KiB
2Accepted0/04ms316 KiB
3Accepted2/21ms316 KiB
4Accepted2/21ms316 KiB
5Accepted2/21ms316 KiB
6Accepted2/21ms316 KiB
7Accepted2/21ms316 KiB
8Wrong answer0/22ms548 KiB
9Accepted2/24ms316 KiB
10Accepted2/24ms316 KiB
11Wrong answer0/24ms436 KiB
12Accepted2/23ms432 KiB
13Wrong answer0/237ms1064 KiB
14Wrong answer0/235ms1432 KiB
15Accepted2/259ms1824 KiB
16Accepted2/267ms1452 KiB
17Accepted2/275ms1840 KiB
18Accepted2/275ms1580 KiB
19Wrong answer0/275ms2340 KiB
20Accepted2/221ms1064 KiB
21Accepted2/259ms1708 KiB
22Accepted2/272ms1332 KiB