4832 2023. 03. 31 13:09:33 Error42 Sportos nyaralás cpp17 Elfogadva 40/40 181ms 22820 KiB
#include <array>
#include <iostream>
#include <map>
#include <vector>

using namespace std;

void dfs(
    vector<vector<int>> const& graph,
    vector<bool>& done,
    vector<int>& component,
    int const cur,
    int const start
) {
    done[cur] = true;
    component[cur] = start;

    for (int const& neigh : graph[cur]) {
        if (done[neigh])
            continue;

        dfs(graph, done, component, neigh, start);
    }
}

int main() {
    array<int, 2> edge_count;

    int n;
    cin >> n >> edge_count[0] >> edge_count[1];

    vector graph(2, vector(n, vector<int>()));

    for (int i = 0; i < 2; i++) {
        for (int j = 0; j < edge_count[i]; j++) {
            int u, v;
            cin >> u >> v;
            u--; v--;

            graph[i][u].push_back(v);
            graph[i][v].push_back(u);
        }
    }

    vector components(2, vector<int>(n));

    for (int i = 0; i < 2; i++) {
        vector<bool> done(n);

        for (int j = 0; j < n; j++)
            if (!done[j])
                dfs(graph[i], done, components[i], j, j);
    }

    map<pair<int, int>, int> cp;

    for (int i = 0; i < n; i++)
        cp[{ components[0][i], components[1][i] }]++;

    for (int i = 0; i < n; i++)
        cout << cp[{ components[0][i], components[1][i] }] - 1 << " ";
    cout << "\n";
}
Részfeladat Összpont Teszt Verdikt Idő Memória
base 40/40
1 Elfogadva 0/0 3ms 1848 KiB
2 Elfogadva 0/0 136ms 21284 KiB
3 Elfogadva 1/1 3ms 2128 KiB
4 Elfogadva 1/1 3ms 2328 KiB
5 Elfogadva 1/1 3ms 2532 KiB
6 Elfogadva 1/1 3ms 2620 KiB
7 Elfogadva 1/1 3ms 2752 KiB
8 Elfogadva 1/1 3ms 2964 KiB
9 Elfogadva 1/1 3ms 3052 KiB
10 Elfogadva 1/1 4ms 3608 KiB
11 Elfogadva 2/2 4ms 3592 KiB
12 Elfogadva 2/2 4ms 3668 KiB
13 Elfogadva 2/2 17ms 4576 KiB
14 Elfogadva 2/2 13ms 4348 KiB
15 Elfogadva 2/2 52ms 12828 KiB
16 Elfogadva 2/2 74ms 16172 KiB
17 Elfogadva 3/3 92ms 19204 KiB
18 Elfogadva 3/3 93ms 19600 KiB
19 Elfogadva 2/2 82ms 13192 KiB
20 Elfogadva 2/2 109ms 17144 KiB
21 Elfogadva 2/2 127ms 18032 KiB
22 Elfogadva 2/2 115ms 19556 KiB
23 Elfogadva 3/3 170ms 21276 KiB
24 Elfogadva 3/3 181ms 22820 KiB