Submission #43047316


Source Code Expand

use proconio::{input, marker::Usize1};

fn adjacency_list(n: usize, uv: &[(usize, usize)]) -> Vec<Vec<usize>> {
    let mut edges = vec![vec![]; n];
    for (u, v) in uv.iter().copied() {
        edges[u].push(v);
        edges[v].push(u);
    }
    edges
}

fn dfs(ans: &mut Vec<usize>, edges: &[Vec<usize>], u: usize, p: usize) {
    ans[u] = 1_usize;
    for v in edges[u].iter().copied() {
        if v == p {
            continue;
        }
        dfs(ans, edges, v, u);
        ans[u] += ans[v];
    }
}

fn main() {
    input! {
        n: usize,
        ab: [(Usize1, Usize1); n - 1],
    }

    let edges = adjacency_list(n, &ab);
    let mut ans = vec![0_usize; n];
    dfs(&mut ans, &edges, 0, 0);

    for a in ans {
        println!("{}", a);
    }
}

Submission Info

Submission Time
Task C - 各部分木の大きさ
User bouzuya
Language Rust (1.42.0)
Score 100
Code Size 765 Byte
Status AC
Exec Time 231 ms
Memory 16996 KiB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 100 / 100
Status
AC × 1
AC × 31
Set Name Test Cases
Sample 00_sample_00
All 00_sample_00, 10_random_00, 10_random_01, 10_random_02, 10_random_03, 10_random_04, 10_random_05, 10_random_06, 10_random_07, 10_random_08, 10_random_09, 10_random_10, 10_random_11, 10_random_12, 10_random_13, 10_random_14, 11_max_00, 11_max_01, 11_max_02, 11_max_03, 11_max_04, 90_challenge_00, 90_challenge_01, 90_challenge_02, 90_challenge_03, 90_challenge_04, 91_challenge_max_00, 91_challenge_max_01, 91_challenge_max_02, 91_challenge_max_03, 91_challenge_max_04
Case Name Status Exec Time Memory
00_sample_00 AC 6 ms 2164 KiB
10_random_00 AC 2 ms 2092 KiB
10_random_01 AC 6 ms 2084 KiB
10_random_02 AC 2 ms 2116 KiB
10_random_03 AC 3 ms 2128 KiB
10_random_04 AC 4 ms 2148 KiB
10_random_05 AC 6 ms 2048 KiB
10_random_06 AC 4 ms 2196 KiB
10_random_07 AC 3 ms 2080 KiB
10_random_08 AC 12 ms 2156 KiB
10_random_09 AC 4 ms 2032 KiB
10_random_10 AC 3 ms 2156 KiB
10_random_11 AC 3 ms 2160 KiB
10_random_12 AC 4 ms 2108 KiB
10_random_13 AC 3 ms 2148 KiB
10_random_14 AC 5 ms 2044 KiB
11_max_00 AC 208 ms 11448 KiB
11_max_01 AC 206 ms 11388 KiB
11_max_02 AC 214 ms 11440 KiB
11_max_03 AC 206 ms 11456 KiB
11_max_04 AC 216 ms 11456 KiB
90_challenge_00 AC 6 ms 2272 KiB
90_challenge_01 AC 7 ms 2288 KiB
90_challenge_02 AC 5 ms 2164 KiB
90_challenge_03 AC 4 ms 2172 KiB
90_challenge_04 AC 4 ms 2160 KiB
91_challenge_max_00 AC 231 ms 16996 KiB
91_challenge_max_01 AC 224 ms 16700 KiB
91_challenge_max_02 AC 224 ms 14668 KiB
91_challenge_max_03 AC 225 ms 15528 KiB
91_challenge_max_04 AC 225 ms 15704 KiB