245732026-02-12 20:25:44999Inverziócpp17Accepted 50/50186ms7508 KiB
// Source: https://usaco.guide/general/io

#include <bits/stdc++.h>
using namespace std;
#define int long long

signed main() {
    int n;cin>>n;
    vector<int> v(n);
    for(int i = 0;i<n;i++){
        cin>>v[i];
    }
    int lo=0,hi=n,mi=0;
    while(lo<hi-1){
        mi=(lo+hi)/2;
        int mxx=-1;
        bool jo=false;
        for(int i = mi;i<n;i++){
            mxx=max(mxx,v[i-mi]);
            if(mxx>=v[i])jo=true;
            if(jo)break;
        }
        if(jo){
            lo=mi;
        }
        else{
            hi=mi;
        }
    }
    for(int i = lo;i<n;i++){
        if(v[i]<v[i-lo]){
            cout<<i-lo+1<<' '<<i+1<<endl;
            return 0;
        }
    }cout<<-1<<endl;
}
SubtaskSumTestVerdictTimeMemory
base50/50
1Accepted0/01ms316 KiB
2Accepted0/017ms564 KiB
3Accepted1/11ms316 KiB
4Accepted2/21ms316 KiB
5Accepted7/71ms316 KiB
6Accepted2/217ms804 KiB
7Accepted2/2182ms4280 KiB
8Accepted2/2177ms4324 KiB
9Accepted2/2177ms4324 KiB
10Accepted2/2181ms7508 KiB
11Accepted2/2180ms7436 KiB
12Accepted2/2179ms4252 KiB
13Accepted2/2180ms4152 KiB
14Accepted2/2181ms4148 KiB
15Accepted2/2186ms7484 KiB
16Accepted2/2180ms4148 KiB
17Accepted2/2178ms4148 KiB
18Accepted2/2181ms4332 KiB
19Accepted3/3184ms4148 KiB
20Accepted3/3180ms4404 KiB
21Accepted2/2180ms4320 KiB
22Accepted2/2181ms4328 KiB
23Accepted2/2179ms4504 KiB
24Accepted2/2186ms4340 KiB