Submission #40944118
Source Code Expand
use std::collections::{HashSet, VecDeque}; use proconio::{input, marker::Usize1}; macro_rules! chmax { ($max_v: expr, $v: expr) => { if $v > $max_v { $max_v = $v; true } else { false } }; } fn main() { input! { n: usize, m: usize, xy: [(Usize1, Usize1); m], } let mut edges = vec![HashSet::new(); n]; let mut redges = vec![HashSet::new(); n]; for (x, y) in xy { edges[x].insert(y); redges[y].insert(x); } let mut deque = VecDeque::new(); for (i, e) in edges.iter().enumerate() { if e.is_empty() { deque.push_back(i); } } let mut dp = vec![0_usize; n]; while let Some(v) = deque.pop_front() { for u in redges[v].iter().copied() { chmax!(dp[u], dp[v] + 1); edges[u].remove(&v); if edges[u].is_empty() { deque.push_back(u); } } } let ans = dp.iter().copied().max().unwrap(); println!("{}", ans); }
Submission Info
Submission Time | |
---|---|
Task | G - Longest Path |
User | bouzuya |
Language | Rust (1.42.0) |
Score | 100 |
Code Size | 1072 Byte |
Status | AC |
Exec Time | 121 ms |
Memory | 24988 KiB |
Judge Result
Set Name | All | ||
---|---|---|---|
Score / Max Score | 100 / 100 | ||
Status |
|
Set Name | Test Cases |
---|---|
All | 0_00, 0_01, 0_02, 1_00, 1_01, 1_02, 1_03, 1_04, 1_05, 1_06, 1_07, 1_08, 1_09, 1_10, 1_11, 1_12, 1_13, 1_14, 1_15, 1_16, 1_17, 1_18 |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
0_00 | AC | 7 ms | 2128 KiB |
0_01 | AC | 1 ms | 2120 KiB |
0_02 | AC | 2 ms | 2044 KiB |
1_00 | AC | 3 ms | 2108 KiB |
1_01 | AC | 121 ms | 24988 KiB |
1_02 | AC | 37 ms | 7344 KiB |
1_03 | AC | 94 ms | 21924 KiB |
1_04 | AC | 74 ms | 15296 KiB |
1_05 | AC | 58 ms | 11720 KiB |
1_06 | AC | 52 ms | 9780 KiB |
1_07 | AC | 44 ms | 8796 KiB |
1_08 | AC | 41 ms | 8308 KiB |
1_09 | AC | 39 ms | 7996 KiB |
1_10 | AC | 37 ms | 7556 KiB |
1_11 | AC | 53 ms | 10572 KiB |
1_12 | AC | 104 ms | 21764 KiB |
1_13 | AC | 89 ms | 18356 KiB |
1_14 | AC | 56 ms | 11420 KiB |
1_15 | AC | 53 ms | 10332 KiB |
1_16 | AC | 84 ms | 17356 KiB |
1_17 | AC | 111 ms | 23092 KiB |
1_18 | AC | 69 ms | 14296 KiB |