49422023-04-07 17:13:17eokorLegmesszebbi rossz sorrendű (35 pont)cpp11Hibás válasz 0/353ms4236 KiB
#include <bits/stdc++.h>

using namespace std;

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

int main()
{
    ifstream cin("be.txt");
   int n;
   cin>>n;
   vector <pair<int,int>> sori(n+1);
   for(int i=1;i<=n;i++)
        {
            cin>>sori[i].first;
            sori[i].second=i;
        }
    sort(sori.begin()+1,sori.end()+1,csokk);
    vector <pair<int,int>> maxi;
    maxi.push_back({0,0});
    maxi.push_back({sori[n].first,sori[n].second});
    vector <pair<int,int>> mini;
    mini.push_back({0,0});
    mini.push_back({sori[1].first,sori[1].second});

    int akmini,akmaxi;
    akmaxi=sori[n].second;
    akmini=sori[1].second;
//    cout<<akmaxi<<" "<<akmini<<endl;

        for(int i=n-1;i>=0;i--)
        {
        if(akmaxi<sori[i].second)
            {
                maxi.push_back({sori[i].first,sori[i].second});
                akmaxi=sori[i].second;

            }
        }
        for(int i=2;i<=n;i++)
        {
            if(akmini>sori[i].second)
                {
                mini.push_back({sori[i].first,sori[i].second});
                akmini=sori[i].second;
                }
        }
//        for(int i=1;i<=maxi.size()-1;i++)
//            cout<<maxi[i].second<<" ";
//        cout<<endl;
//        for(int i=1;i<=mini.size()-1;i++)
//            cout<<mini[i].second<<" ";
    int minihossz=mini.size()-1;
    int maxihossz=maxi.size()-1;
    int v1=0,v2=0;
        for(int i=minihossz;i>=1;i--)
        {
            int ind=1;
            while(ind<=maxihossz)
            {
                if(mini[i].first>maxi[ind].first)
                {
                    if(v1-v2<maxi[ind].second-mini[i].second)
                    {
                        v1=maxi[ind].second;
                        v2=mini[i].second;
                    }
                }
                ind++;
            }

        }
    cout<<v2<<" "<<v1;
    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base0/35
1Hibás válasz0/03ms1680 KiB
2Hibás válasz0/03ms2120 KiB
3Hibás válasz0/13ms2172 KiB
4Hibás válasz0/12ms2172 KiB
5Hibás válasz0/13ms2428 KiB
6Hibás válasz0/12ms2380 KiB
7Hibás válasz0/13ms2636 KiB
8Hibás válasz0/13ms2760 KiB
9Hibás válasz0/13ms3012 KiB
10Hibás válasz0/13ms3248 KiB
11Hibás válasz0/12ms3236 KiB
12Hibás válasz0/22ms3176 KiB
13Hibás válasz0/23ms3292 KiB
14Hibás válasz0/23ms3456 KiB
15Hibás válasz0/22ms3540 KiB
16Hibás válasz0/23ms3540 KiB
17Hibás válasz0/23ms3604 KiB
18Hibás válasz0/23ms3728 KiB
19Hibás válasz0/22ms3848 KiB
20Hibás válasz0/23ms3856 KiB
21Hibás válasz0/22ms3852 KiB
22Hibás válasz0/23ms4112 KiB
23Hibás válasz0/22ms4236 KiB
24Hibás válasz0/23ms4188 KiB