Submission #50728887


Source Code Expand

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

fn dijkstra(n: usize, inf: usize, e: &[Vec<(usize, usize)>], s: usize) -> Vec<usize> {
    use std::{cmp::Reverse, collections::BinaryHeap};
    let mut d = vec![inf; n];
    let mut pq = BinaryHeap::new();
    d[s] = 0;
    pq.push(Reverse((0, s)));
    while let Some(Reverse((w_u, u))) = pq.pop() {
        if w_u > d[u] {
            continue;
        }
        for (v, w_v) in e[u].iter().copied() {
            let w = w_u + w_v;
            if w < d[v] {
                d[v] = w;
                pq.push(Reverse((w, v)));
            }
        }
    }
    d
}

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

    let mut edges = vec![vec![]; n];
    for (a, b, c) in abc {
        edges[a].push((b, c));
        edges[b].push((a, c));
    }

    let inf = 1 << 60;
    let dist0 = dijkstra(n, inf, &edges, 0);
    let distn = dijkstra(n, inf, &edges, n - 1);
    for k in 0..n {
        println!("{}", dist0[k] + distn[k]);
    }
}

Submission Info

Submission Time
Task 013 - Passing(★5)
User bouzuya
Language Rust (rustc 1.70.0)
Score 5
Code Size 1043 Byte
Status AC
Exec Time 141 ms
Memory 18256 KiB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 5 / 5
Status
AC × 3
AC × 19
Set Name Test Cases
Sample sample_1.txt, sample_2.txt, sample_3.txt
All killer_1.txt, killer_2.txt, killer_3.txt, line_1.txt, line_2.txt, line_3.txt, rand_1.txt, rand_2.txt, rand_3.txt, rand_4.txt, rand_5.txt, rand_6.txt, rand_7.txt, sample_1.txt, sample_2.txt, sample_3.txt, star_1.txt, star_2.txt, star_3.txt
Case Name Status Exec Time Memory
killer_1.txt AC 6 ms 2596 KiB
killer_2.txt AC 82 ms 12392 KiB
killer_3.txt AC 1 ms 1980 KiB
line_1.txt AC 122 ms 16104 KiB
line_2.txt AC 126 ms 16108 KiB
line_3.txt AC 123 ms 15996 KiB
rand_1.txt AC 81 ms 12740 KiB
rand_2.txt AC 39 ms 11424 KiB
rand_3.txt AC 75 ms 12276 KiB
rand_4.txt AC 63 ms 11648 KiB
rand_5.txt AC 47 ms 11528 KiB
rand_6.txt AC 55 ms 11064 KiB
rand_7.txt AC 64 ms 11920 KiB
sample_1.txt AC 1 ms 1940 KiB
sample_2.txt AC 1 ms 1928 KiB
sample_3.txt AC 1 ms 2080 KiB
star_1.txt AC 138 ms 17800 KiB
star_2.txt AC 140 ms 18256 KiB
star_3.txt AC 141 ms 18164 KiB