208452026-01-09 20:18:05hunzombiA lehető legkevesebb átszállás (50 pont)cpp17Futási hiba 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;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base0/50
1Futási hiba0/02ms756 KiB
2Futási hiba0/08ms1016 KiB
3Futási hiba0/12ms948 KiB
4Futási hiba0/12ms756 KiB
5Futási hiba0/22ms756 KiB
6Futási hiba0/21ms756 KiB
7Futási hiba0/22ms820 KiB
8Futási hiba0/23ms828 KiB
9Futási hiba0/23ms824 KiB
10Futási hiba0/23ms840 KiB
11Futási hiba0/24ms840 KiB
12Futási hiba0/24ms864 KiB
13Futási hiba0/23ms820 KiB
14Futási hiba0/23ms828 KiB
15Futási hiba0/24ms840 KiB
16Futási hiba0/24ms864 KiB
17Futási hiba0/26ms864 KiB
18Futási hiba0/27ms1060 KiB
19Futási hiba0/28ms820 KiB
20Futási hiba0/28ms820 KiB
21Futási hiba0/28ms1016 KiB
22Futási hiba0/28ms820 KiB
23Futási hiba0/28ms1016 KiB
24Futási hiba0/28ms948 KiB
25Futási hiba0/28ms820 KiB
26Futási hiba0/28ms820 KiB
27Futási hiba0/28ms824 KiB
28Futási hiba0/28ms820 KiB