140382025-01-09 17:49:03Podlipnik07Inverziócpp17Hibás válasz 6/5059ms2540 KiB
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;

int main()
{
    ios::sync_with_stdio(false);
    cin.tie(0);
    int n; cin >> n;
    vector<int> v(n+1);
    for (int i = 0; i < n; i++) {
        int temp; cin >> temp;
        v[temp] = i + 1;
    }
    int maxDiff = -1, maxEnd = -1;
    for (int i : v) {
        if (i == 0) continue;
        else if ((v[1] - i) > maxDiff) {
            maxDiff = (v[1] - i);
            maxEnd = i;
        }
    }
    for (int i : v) {
        if (i == maxEnd) break;
        if (i - maxEnd > maxDiff)maxDiff = (i - maxEnd);
    }
    if (maxEnd == 0) {
        cout << -1; return 0;
    }
    cout << maxEnd << " " << maxDiff + maxEnd;
}

//5
//4 3 5 1 2

// 4 5 2 1 3
RészfeladatÖsszpontTesztVerdiktIdőMemória
base6/50
1Elfogadva0/01ms316 KiB
2Hibás válasz0/06ms564 KiB
3Hibás válasz0/11ms316 KiB
4Elfogadva2/21ms316 KiB
5Hibás válasz0/71ms316 KiB
6Hibás válasz0/26ms656 KiB
7Hibás válasz0/256ms2148 KiB
8Hibás válasz0/257ms2356 KiB
9Hibás válasz0/257ms2360 KiB
10Elfogadva2/259ms2356 KiB
11Hibás válasz0/259ms2356 KiB
12Hibás válasz0/256ms2176 KiB
13Hibás válasz0/257ms2204 KiB
14Hibás válasz0/256ms2356 KiB
15Hibás válasz0/256ms2356 KiB
16Hibás válasz0/259ms2144 KiB
17Hibás válasz0/256ms2256 KiB
18Hibás válasz0/256ms2356 KiB
19Hibás válasz0/356ms2540 KiB
20Hibás válasz0/356ms2356 KiB
21Hibás válasz0/254ms2360 KiB
22Hibás válasz0/256ms2356 KiB
23Elfogadva2/257ms2360 KiB
24Hibás válasz0/254ms2356 KiB