176492025-08-24 16:18:53algoproFasor (40)cpp17Hibás válasz 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;}
    }
    
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base30/40
1Elfogadva0/01ms500 KiB
2Elfogadva0/04ms316 KiB
3Elfogadva2/21ms316 KiB
4Elfogadva2/21ms316 KiB
5Elfogadva2/21ms316 KiB
6Elfogadva2/21ms316 KiB
7Elfogadva2/21ms316 KiB
8Hibás válasz0/22ms548 KiB
9Elfogadva2/24ms316 KiB
10Elfogadva2/24ms316 KiB
11Hibás válasz0/24ms436 KiB
12Elfogadva2/23ms432 KiB
13Hibás válasz0/237ms1064 KiB
14Hibás válasz0/235ms1432 KiB
15Elfogadva2/259ms1824 KiB
16Elfogadva2/267ms1452 KiB
17Elfogadva2/275ms1840 KiB
18Elfogadva2/275ms1580 KiB
19Hibás válasz0/275ms2340 KiB
20Elfogadva2/221ms1064 KiB
21Elfogadva2/259ms1708 KiB
22Elfogadva2/272ms1332 KiB