Submission #17047541


Source Code Expand

#include <iostream>
#include <vector>
#include <deque>
using i64 = long long;

int main() {
    int n, m;
    std::cin >> n >> m;
    std::vector<std::vector<int>> g(n);
    for (int i = 0; i < m; i++) {
        int a, b;
        std::cin >> a >> b;
        --a; --b;
        g[a].push_back(b);
        g[b].push_back(a);
    }

    int ret = 0;
    std::vector<int> done(n);
    for (int i = 0; i < n; i++) if (!done[i]) {
        ret++;
        std::deque<int> q { i };
        done[i] = 1;
        while (!q.empty()) {
            const int v = q.front();
            q.pop_front();
            for (const int to : g[v]) if (!done[to]) {
                done[to] = 1;
                q.push_back(to);
            }
        }
    }

    std::cout << ret - 1 << std::endl;

    return 0;
}

Submission Info

Submission Time
Task C - Connect Cities
User CharlotteL
Language C++ (GCC 9.2.1)
Score 300
Code Size 828 Byte
Status AC
Exec Time 73 ms
Memory 8804 KiB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 300 / 300
Status
AC × 1
AC × 21
Set Name Test Cases
Sample example0.txt
All 000.txt, 001.txt, 002.txt, 003.txt, 004.txt, 005.txt, 006.txt, 007.txt, 008.txt, 009.txt, 010.txt, 011.txt, 012.txt, 013.txt, 014.txt, 015.txt, 016.txt, 017.txt, 018.txt, 019.txt, example0.txt
Case Name Status Exec Time Memory
000.txt AC 42 ms 4656 KiB
001.txt AC 18 ms 4488 KiB
002.txt AC 24 ms 5580 KiB
003.txt AC 61 ms 6180 KiB
004.txt AC 65 ms 6444 KiB
005.txt AC 32 ms 6428 KiB
006.txt AC 63 ms 7668 KiB
007.txt AC 11 ms 5468 KiB
008.txt AC 68 ms 8444 KiB
009.txt AC 34 ms 5104 KiB
010.txt AC 71 ms 8748 KiB
011.txt AC 70 ms 8800 KiB
012.txt AC 73 ms 8584 KiB
013.txt AC 70 ms 8572 KiB
014.txt AC 71 ms 8804 KiB
015.txt AC 71 ms 8800 KiB
016.txt AC 72 ms 8704 KiB
017.txt AC 73 ms 8624 KiB
018.txt AC 73 ms 8588 KiB
019.txt AC 70 ms 8676 KiB
example0.txt AC 3 ms 3556 KiB