6685 2023. 12. 16 14:12:29 anon Adószedő cpp17 Elfogadva 30/30 174ms 31748 KiB
#include <bits/stdc++.h>
#define FastIO ios::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL)
typedef long long ll;
using namespace std;
const ll INF = ~(1LL << 63);
int main() {
    FastIO;
    ll i, N, M, capital, n1, n2, key;
    vector<ll> edge(2);
    queue<array<ll, 3>> q;
    cin >> N >> M >> capital;
    unordered_set<ll> ans(M);
    vector<vector<ll>> G(N + 1);
    vector<ll> dist(N + 1, INF);
    for(i = 0; i < M; i++) {
        cin >> n1 >> n2;
        G[n1].push_back(n2);
        G[n2].push_back(n1);
    }
    q.push({ capital, 0, 0 });
    while(!q.empty()) {
        array<ll, 3> cs = q.front();
        q.pop();
        if(dist[cs[0]] < cs[2])
            continue;
        dist[cs[0]] = cs[2];
        if(cs[1]) {
            edge[0] = cs[0];
            edge[1] = cs[1];
            sort(edge.begin(), edge.end());
            key = edge[0] | (edge[1] << 32);
            if(ans.find(key) != ans.end())
                continue;
            ans.insert(key);
        }
        for(const auto &x : G[cs[0]]) {
            if(dist[x] > cs[2])
                q.push({ x, cs[0], cs[2] + 1 });
        }
    }
    cout << ans.size() << '\n';
    for(const auto &x : ans)
        cout << (x & ((1LL << 32) - 1)) << ' ' << (x >> 32) << '\n';
    return 0;
}

Részfeladat Összpont Teszt Verdikt Idő Memória
base 30/30
1 Elfogadva 0/0 3ms 1828 KiB
2 Elfogadva 0/0 136ms 24732 KiB
3 Elfogadva 1/1 3ms 2352 KiB
4 Elfogadva 1/1 3ms 2436 KiB
5 Elfogadva 1/1 3ms 2472 KiB
6 Elfogadva 1/1 3ms 2552 KiB
7 Elfogadva 1/1 3ms 2768 KiB
8 Elfogadva 1/1 3ms 3040 KiB
9 Elfogadva 2/2 3ms 3208 KiB
10 Elfogadva 2/2 4ms 3268 KiB
11 Elfogadva 2/2 4ms 3264 KiB
12 Elfogadva 2/2 12ms 4788 KiB
13 Elfogadva 2/2 26ms 7492 KiB
14 Elfogadva 2/2 111ms 21944 KiB
15 Elfogadva 1/1 150ms 29340 KiB
16 Elfogadva 1/1 122ms 24844 KiB
17 Elfogadva 2/2 165ms 30992 KiB
18 Elfogadva 2/2 152ms 28552 KiB
19 Elfogadva 2/2 174ms 29748 KiB
20 Elfogadva 2/2 160ms 30760 KiB
21 Elfogadva 2/2 168ms 31748 KiB