178442025-09-19 17:42:38KristófA lehető legkevesebb átszállás (50 pont)cpp17Hibás válasz 6/508ms592 KiB
#include <iostream>
#include <vector>

using namespace std;

int main()
{
    int n,m;
    cin>>n>>m;
    vector<pair<int,int>> utak(n+1);
    for(int i=1;i<=n;i++)
        {
        cin>>utak[i].first>>utak[i].second;
        }
    int tovabbm=1;
    int tovabbmtmp=1;
    int indextmp;
    vector<int> megoldas(10001);
    int cnt=0;
    for(int i=1;i<=n;)
        {
        if(utak[i].first<=tovabbm)
            {
            if(utak[i].second>tovabbmtmp)
                {
                tovabbmtmp=utak[i].second;
                indextmp=i;
                }
            i++;
            }
        else
            {
            if(tovabbm==tovabbmtmp)
                {
                cout<<-1<<" "<<tovabbm;
                return 0;
                }
            else
                {
                tovabbm=tovabbmtmp;
                megoldas[cnt]=indextmp;
                cnt++;
                }
            }
        }
    cout<<cnt<<endl;
    for(int i=0;i<cnt;i++)
        {
        cout<<megoldas[i]<<" ";
        }
    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base6/50
1Hibás válasz0/01ms316 KiB
2Hibás válasz0/08ms564 KiB
3Hibás válasz0/11ms316 KiB
4Elfogadva1/11ms316 KiB
5Hibás válasz0/21ms500 KiB
6Részben helyes1/21ms508 KiB
7Hibás válasz0/22ms572 KiB
8Hibás válasz0/22ms508 KiB
9Hibás válasz0/22ms508 KiB
10Hibás válasz0/23ms440 KiB
11Hibás válasz0/24ms316 KiB
12Hibás válasz0/24ms484 KiB
13Hibás válasz0/22ms316 KiB
14Hibás válasz0/22ms316 KiB
15Hibás válasz0/23ms464 KiB
16Hibás válasz0/24ms412 KiB
17Hibás válasz0/26ms536 KiB
18Hibás válasz0/26ms564 KiB
19Hibás válasz0/27ms564 KiB
20Hibás válasz0/27ms568 KiB
21Hibás válasz0/28ms416 KiB
22Hibás válasz0/28ms568 KiB
23Részben helyes1/27ms580 KiB
24Részben helyes1/27ms584 KiB
25Hibás válasz0/28ms564 KiB
26Részben helyes1/28ms592 KiB
27Részben helyes1/28ms496 KiB
28Hibás válasz0/28ms588 KiB