206032026-01-07 19:00:03SomogyiA lehető legkevesebb átszállás (50 pont)cpp17Accepted 50/508ms552 KiB
#include <iostream>
#include <vector>

using namespace std;

struct vonat
{
    int k,v;
};

int main()
{
    int n,a;
    cin >> n >> a;

    vector <vonat> v(n);
    vector <int> ind;

    for (int i=0; i<n; i++)
    {
        cin >> v[i].k >> v[i].v;
    }

    int vege=1,i=0,maxveg,maxind;
    while (vege!=a)
    {
        maxveg=vege;
        maxind=-1;
        while (i<n && v[i].k<=vege)
        {
            if (v[i].v>maxveg)
            {
                maxveg=v[i].v;
                maxind=i;
            }
            i++;
        }
        if (maxind==-1)
        {
            cout << maxind;
            return 0;
        }
        vege=maxveg;
        ind.push_back(maxind+1);
    }

    cout << ind.size()-1 << endl;
    int m=ind.size();
    for (int i=0; i<m;i++)
    {
        cout << ind[i] << " ";
    }
    return 0;
}
SubtaskSumTestVerdictTimeMemory
base50/50
1Accepted0/01ms316 KiB
2Accepted0/08ms508 KiB
3Accepted1/11ms316 KiB
4Accepted1/11ms316 KiB
5Accepted2/21ms316 KiB
6Accepted2/21ms316 KiB
7Accepted2/21ms328 KiB
8Accepted2/22ms316 KiB
9Accepted2/22ms316 KiB
10Accepted2/23ms316 KiB
11Accepted2/23ms316 KiB
12Accepted2/24ms316 KiB
13Accepted2/22ms552 KiB
14Accepted2/22ms508 KiB
15Accepted2/23ms424 KiB
16Accepted2/24ms316 KiB
17Accepted2/26ms456 KiB
18Accepted2/26ms316 KiB
19Accepted2/27ms468 KiB
20Accepted2/27ms468 KiB
21Accepted2/27ms472 KiB
22Accepted2/27ms316 KiB
23Accepted2/27ms316 KiB
24Accepted2/27ms316 KiB
25Accepted2/27ms508 KiB
26Accepted2/27ms316 KiB
27Accepted2/27ms316 KiB
28Accepted2/27ms508 KiB