197562025-12-21 23:19:33AncsaLegmesszebbi rossz sorrendű (35 pont)cpp17Wrong answer 25/3550ms1964 KiB
#include <bits/stdc++.h>
#include<queue>

using namespace std;

bool rendez(pair<int, int> a, pair<int, int> b )
{
    return a.first>b.first;
}

int main()
{
    int utolso,eleje=-1,vege=-1,index;
    int n;
    cin>>n;
    utolso=n-1;
    bool volte[n];
    vector<int> a(n);
    vector<pair<int, int>> seged;
    for(int i=0;i<n;i++)
    {
        cin>>a.at(i);
        volte[i]=false;
        seged.push_back(make_pair(a[i],i));
    }

    sort(seged.begin(), seged.end(), rendez);

    for(pair<int, int> x: seged)
    {
        index=x.second;
        volte[index]=true;
        if(index!=utolso && utolso-index>=vege-eleje)
        {
            eleje=index;
            vege=utolso;
        }
        while(volte[utolso])
            utolso--;

    }
    if(eleje==-1)
    {
        cout<<-1;
        return 0;
    }
    cout<<eleje+1<<" "<<vege+1;
  return 0;
}
SubtaskSumTestVerdictTimeMemory
base25/35
1Accepted0/01ms316 KiB
2Accepted0/050ms1964 KiB
3Accepted1/11ms316 KiB
4Accepted1/11ms316 KiB
5Accepted1/11ms316 KiB
6Accepted1/11ms316 KiB
7Accepted1/11ms316 KiB
8Accepted1/11ms408 KiB
9Accepted1/12ms508 KiB
10Accepted1/12ms316 KiB
11Accepted1/13ms316 KiB
12Wrong answer0/219ms1148 KiB
13Wrong answer0/221ms1220 KiB
14Wrong answer0/224ms1108 KiB
15Wrong answer0/214ms792 KiB
16Wrong answer0/224ms1200 KiB
17Accepted2/235ms1704 KiB
18Accepted2/241ms1928 KiB
19Accepted2/245ms1920 KiB
20Accepted2/246ms1964 KiB
21Accepted2/250ms1784 KiB
22Accepted2/250ms1960 KiB
23Accepted2/239ms1908 KiB
24Accepted2/239ms1964 KiB