7793 2024. 01. 11 10:18:09 csaron71 A lehető legkevesebb átszállás (50 pont) cpp17 Hibás válasz 3/50 14ms 9996 KiB
#include <bits/stdc++.h>

using namespace std;


int main()
{
    int n, m;
    cin >> n >> m;
    vector<vector<int> > elek(m, vector<int>());
    for (int i=0; i<n; i++) {
        int x, y;
        cin >> x >> y;
        x--;
        y--;
        elek[x].push_back(y);
        elek[y].push_back(x);
    }

    queue<pair<int, int> > sor;
    sor.push({0, m-1});
    vector<int> ertekek(m, -1);

    while (sor.size()>0) {

        int tav=sor.front().first;
        int elso=sor.front().second;
        sor.pop();
        if (ertekek[elso]!=-1) {
            continue;
        }
        //cout << elso << " " << tav << "\n";
        ertekek[elso]=tav;
        for (int sz : elek[elso]) {
            sor.push({tav+1, sz});
        }
    }
    if (ertekek[0]==-1) {
        cout << "-1";
    }
    else {
        cout << ertekek[0]-1 << "\n";
        int szam=ertekek[0];
        for (int i=1; i<m; i++) {
                if (szam==0) {
                    break;
                }
            if (ertekek[i]<=ertekek[0] && ertekek[i]!=-1) {
                cout << i+1 << " ";
                szam--;
            }
        }
    }


    return 0;
}
Részfeladat Összpont Teszt Verdikt Idő Memória
base 3/50
1 Hibás válasz 0/0 3ms 1812 KiB
2 Hibás válasz 0/0 13ms 8552 KiB
3 Elfogadva 1/1 3ms 2264 KiB
4 Elfogadva 1/1 3ms 2476 KiB
5 Részben helyes 1/2 3ms 2688 KiB
6 Hibás válasz 0/2 3ms 2772 KiB
7 Hibás válasz 0/2 4ms 2980 KiB
8 Hibás válasz 0/2 4ms 3116 KiB
9 Hibás válasz 0/2 4ms 3160 KiB
10 Hibás válasz 0/2 4ms 3572 KiB
11 Hibás válasz 0/2 7ms 5212 KiB
12 Hibás válasz 0/2 8ms 5244 KiB
13 Hibás válasz 0/2 4ms 3860 KiB
14 Hibás válasz 0/2 4ms 5456 KiB
15 Hibás válasz 0/2 6ms 6208 KiB
16 Hibás válasz 0/2 8ms 6420 KiB
17 Hibás válasz 0/2 10ms 8712 KiB
18 Hibás válasz 0/2 10ms 8732 KiB
19 Hibás válasz 0/2 12ms 9120 KiB
20 Hibás válasz 0/2 12ms 9380 KiB
21 Hibás válasz 0/2 14ms 9768 KiB
22 Hibás válasz 0/2 13ms 9996 KiB
23 Hibás válasz 0/2 12ms 8056 KiB
24 Hibás válasz 0/2 13ms 8576 KiB
25 Hibás válasz 0/2 13ms 9364 KiB
26 Hibás válasz 0/2 13ms 9492 KiB
27 Hibás válasz 0/2 13ms 9880 KiB
28 Hibás válasz 0/2 13ms 9908 KiB