135752025-01-08 10:08:37AGergoInverziócpp17Időlimit túllépés 16/50600ms2548 KiB
#include <bits/stdc++.h>

using namespace std;

int main()
{
    cin.tie(0);
    iostream::sync_with_stdio(0);
    int maxlen;
    bool works = false;
    cin >> maxlen;
    vector<int> sor(maxlen);

    for(int i = 0;i < maxlen;i++)
    {
        cin >> sor[i];
    }
    for(int i = 0;i < maxlen;i++) //check hogy sorban van-e inverzio
    {
        if(sor[i] != i+1)
        {
            works = true;
            break;
        }
    }

    int l = 0, r = maxlen-1, lenPB = -1,smallest = 500001,PBr,PBl;
    if(works)
    {
        while(r>lenPB)
        {
            if(r-l<lenPB || sor[r] >smallest)
            {
                r--;
                l=0;
            }
            if(sor[l]>sor[r])
            {
                lenPB = r-l;
                PBr = r;
                PBl = l;
                smallest = r;
                r--;
                l=0;
            }
            l++;
        }

        cout << PBl+1 << " " << PBr+1;
    }
    else
    {
        cout << "-1";
    }
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base16/50
1Elfogadva0/01ms316 KiB
2Időlimit túllépés0/0580ms564 KiB
3Elfogadva1/11ms508 KiB
4Elfogadva2/21ms512 KiB
5Elfogadva7/71ms316 KiB
6Elfogadva2/2344ms564 KiB
7Időlimit túllépés0/2600ms2356 KiB
8Időlimit túllépés0/2600ms2356 KiB
9Elfogadva2/263ms2356 KiB
10Időlimit túllépés0/2579ms2356 KiB
11Időlimit túllépés0/2582ms2356 KiB
12Időlimit túllépés0/2587ms2376 KiB
13Időlimit túllépés0/2600ms2540 KiB
14Időlimit túllépés0/2580ms2356 KiB
15Időlimit túllépés0/2600ms2356 KiB
16Időlimit túllépés0/2586ms2356 KiB
17Időlimit túllépés0/2600ms2548 KiB
18Időlimit túllépés0/2589ms2356 KiB
19Időlimit túllépés0/3587ms2356 KiB
20Időlimit túllépés0/3589ms2356 KiB
21Időlimit túllépés0/2600ms2356 KiB
22Időlimit túllépés0/2579ms2384 KiB
23Időlimit túllépés0/2600ms2356 KiB
24Elfogadva2/254ms2356 KiB