Submission #28637202


Source Code Expand

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

fn dfs(edges: &[Vec<(usize, usize)>], x: usize, u: usize, p: usize, d: usize) -> bool {
    if d == x {
        return true;
    }
    for (v, w) in edges[u].iter().copied() {
        if v == p {
            continue;
        }
        if dfs(edges, x, v, u, d + w) {
            return true;
        }
    }
    false
}

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

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

    let e = adjacency_list(n, &abc);
    for u in 0..n {
        if dfs(&e, x, u, u, 0) {
            println!("Yes");
            return;
        }
    }
    println!("No");
}

Submission Info

Submission Time
Task H - Shortest Path
User bouzuya
Language Rust (1.42.0)
Score 6
Code Size 889 Byte
Status AC
Exec Time 151 ms
Memory 2660 KiB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 6 / 6
Status
AC × 3
AC × 27
Set Name Test Cases
Sample 00_sample_00.txt, 00_sample_01.txt, 00_sample_02.txt
All 00_sample_00.txt, 00_sample_01.txt, 00_sample_02.txt, 01_random_00.txt, 01_random_01.txt, 01_random_02.txt, 01_random_03.txt, 01_random_04.txt, 01_random_05.txt, 01_random_06.txt, 01_random_07.txt, 01_random_08.txt, 01_random_09.txt, 02_path_00.txt, 02_path_01.txt, 02_path_02.txt, 02_path_03.txt, 02_path_04.txt, 03_star_00.txt, 03_star_01.txt, 03_star_02.txt, 03_star_03.txt, 03_star_04.txt, 04_path_c_max_00.txt, 04_path_c_max_01.txt, 04_path_c_max_02.txt, 04_path_c_max_03.txt
Case Name Status Exec Time Memory
00_sample_00.txt AC 5 ms 2124 KiB
00_sample_01.txt AC 2 ms 2028 KiB
00_sample_02.txt AC 2 ms 2084 KiB
01_random_00.txt AC 151 ms 2408 KiB
01_random_01.txt AC 40 ms 2460 KiB
01_random_02.txt AC 144 ms 2412 KiB
01_random_03.txt AC 16 ms 2428 KiB
01_random_04.txt AC 145 ms 2380 KiB
01_random_05.txt AC 64 ms 2448 KiB
01_random_06.txt AC 147 ms 2412 KiB
01_random_07.txt AC 20 ms 2376 KiB
01_random_08.txt AC 145 ms 2408 KiB
01_random_09.txt AC 92 ms 2452 KiB
02_path_00.txt AC 128 ms 2660 KiB
02_path_01.txt AC 12 ms 2600 KiB
02_path_02.txt AC 126 ms 2544 KiB
02_path_03.txt AC 65 ms 2580 KiB
02_path_04.txt AC 128 ms 2624 KiB
03_star_00.txt AC 58 ms 2484 KiB
03_star_01.txt AC 7 ms 2352 KiB
03_star_02.txt AC 56 ms 2276 KiB
03_star_03.txt AC 3 ms 2400 KiB
03_star_04.txt AC 57 ms 2432 KiB
04_path_c_max_00.txt AC 130 ms 2648 KiB
04_path_c_max_01.txt AC 48 ms 2512 KiB
04_path_c_max_02.txt AC 125 ms 2608 KiB
04_path_c_max_03.txt AC 17 ms 2648 KiB