133382025-01-07 15:53:38BucsMateLegmesszebbi rossz sorrendű (35 pont)cpp17Wrong answer 25/3539ms1192 KiB
#include <iostream>

using namespace std;

int poz[200001] = {};
int elemek[100001] = {};

int main()
{
    int N;
    cin >> N;
    int temp;
    for(int i = 1; i <= N; i++){
        cin >> temp;
        temp += 100000;
        elemek[i] = temp;
        if(poz[temp] == 0){
            poz[temp] = i;
        }
    }
    int index = N;
    int sol_index1 = 0, sol_index2 = 0;
    for(int num = 200000; num >= 0; num--){
        if(poz[num] == 0){
            continue;
        }
        while(elemek[index] >= num && index > 0){
            index--;
        }
        if(index - poz[num] > sol_index2 - sol_index1){
            sol_index1 = poz[num];
            sol_index2 = index;
        }
    }
    if(sol_index1 == 0){
        cout << -1;
    }
    else{
        cout << sol_index1 << " " << sol_index2;
    }

    return 0;
}
SubtaskSumTestVerdictTimeMemory
base25/35
1Accepted0/01ms316 KiB
2Accepted0/039ms1076 KiB
3Accepted1/11ms500 KiB
4Accepted1/11ms316 KiB
5Accepted1/11ms316 KiB
6Accepted1/11ms316 KiB
7Accepted1/11ms328 KiB
8Wrong answer0/12ms508 KiB
9Accepted1/12ms316 KiB
10Wrong answer0/12ms444 KiB
11Accepted1/13ms876 KiB
12Wrong answer0/216ms664 KiB
13Wrong answer0/218ms616 KiB
14Accepted2/219ms620 KiB
15Accepted2/212ms628 KiB
16Wrong answer0/219ms564 KiB
17Accepted2/227ms952 KiB
18Accepted2/230ms820 KiB
19Wrong answer0/235ms892 KiB
20Accepted2/235ms1048 KiB
21Accepted2/239ms1192 KiB
22Accepted2/239ms1192 KiB
23Accepted2/234ms1188 KiB
24Accepted2/234ms1076 KiB