208452026-01-09 20:18:05hunzombiA lehető legkevesebb átszállás (50 pont)cpp17Runtime error 0/508ms1060 KiB
#include <bits/stdc++.h>
using namespace std;

int n, m;

int main()
{
    cin >> m >> n;
    vector<pair<int, int>> temp;
    for (int i=0; i < m; i++) {
        int u, v;
        cin >> u >> v;
        temp.push_back({u, v});
    }
    vector<pair<pair<int, int>, int>> vec;
    for (int i=0; i , m; i++) {
        vec.push_back({temp[i], i + 1});
    }

    sort(vec.begin(), vec.end());

    int k = 1, i = 0;
    vector<int> ans;

    while (k < n) {
        int next = k;
        int idx = -1;

        while (i < m && vec[i].first.first <= k) {
            if (vec[i].first.second > next) {
                next = vec[i].first.second;
                idx = vec[i].second;
            }
            i++;
        }

        if (next == k) {
            cout << -1 << '\n';
            return 0;
        }

        ans.push_back(idx);
        k = next;
    }

    cout << ans.size() - 1 << '\n';
    for (int x : ans) cout << x << ' ';
    cout << '\n';

    return 0;
}
SubtaskSumTestVerdictTimeMemory
base0/50
1Runtime error0/02ms756 KiB
2Runtime error0/08ms1016 KiB
3Runtime error0/12ms948 KiB
4Runtime error0/12ms756 KiB
5Runtime error0/22ms756 KiB
6Runtime error0/21ms756 KiB
7Runtime error0/22ms820 KiB
8Runtime error0/23ms828 KiB
9Runtime error0/23ms824 KiB
10Runtime error0/23ms840 KiB
11Runtime error0/24ms840 KiB
12Runtime error0/24ms864 KiB
13Runtime error0/23ms820 KiB
14Runtime error0/23ms828 KiB
15Runtime error0/24ms840 KiB
16Runtime error0/24ms864 KiB
17Runtime error0/26ms864 KiB
18Runtime error0/27ms1060 KiB
19Runtime error0/28ms820 KiB
20Runtime error0/28ms820 KiB
21Runtime error0/28ms1016 KiB
22Runtime error0/28ms820 KiB
23Runtime error0/28ms1016 KiB
24Runtime error0/28ms948 KiB
25Runtime error0/28ms820 KiB
26Runtime error0/28ms820 KiB
27Runtime error0/28ms824 KiB
28Runtime error0/28ms820 KiB