library-rs

This documentation is automatically generated by competitive-verifier/competitive-verifier

View the Project on GitHub naoya675/library-rs

:heavy_check_mark: verification/aizu-online-judge/volume28-2880/src/main.rs

Depends on

Code

// verification-helper: PROBLEM https://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=2880

use proconio::input;

use interval_set::IntervalSet;

fn main() {
    input! {
        _n: usize,
        m: usize,
        q: usize,
        dab: [(usize, usize, usize); m],
        est: [(usize, usize, usize); q],
    }
    let mut query = vec![];
    for (_, &(d, a, b)) in dab.iter().enumerate() {
        query.push((d * 2 + 1, 0, a * 2, b * 2 + 1));
    }
    for (i, &(e, s, t)) in est.iter().enumerate() {
        query.push((e * 2, i + 1, s * 2, t * 2));
    }
    query.sort();
    let mut set = IntervalSet::<usize, usize>::new(0);
    let mut res = vec![false; q + 1];
    for &(_, q, s, t) in &query {
        match q {
            0 => {
                set.insert(s, t);
            }
            _ => {
                res[q] = s >= t || set.same(s, t);
            }
        }
    }
    for i in 1..=q {
        println!("{}", if res[i] { "Yes" } else { "No" });
    }
}

Test cases

Env Name Status Elapsed Memory
Rust 00_sample_00.in :heavy_check_mark: AC 6 ms 2 MB
Rust 00_sample_01.in :heavy_check_mark: AC 5 ms 2 MB
Rust 10_handmade_00.in :heavy_check_mark: AC 5 ms 2 MB
Rust 10_handmade_01.in :heavy_check_mark: AC 5 ms 2 MB
Rust 10_handmade_02.in :heavy_check_mark: AC 5 ms 2 MB
Rust 10_handmade_03.in :heavy_check_mark: AC 6 ms 2 MB
Rust 50_random_small_00.in :heavy_check_mark: AC 5 ms 2 MB
Rust 50_random_small_01.in :heavy_check_mark: AC 5 ms 2 MB
Rust 50_random_small_02.in :heavy_check_mark: AC 5 ms 2 MB
Rust 50_random_small_03.in :heavy_check_mark: AC 5 ms 2 MB
Rust 50_random_small_04.in :heavy_check_mark: AC 5 ms 2 MB
Rust 50_random_small_05.in :heavy_check_mark: AC 6 ms 2 MB
Rust 50_random_small_06.in :heavy_check_mark: AC 5 ms 2 MB
Rust 50_random_small_07.in :heavy_check_mark: AC 5 ms 2 MB
Rust 50_random_small_08.in :heavy_check_mark: AC 5 ms 2 MB
Rust 50_random_small_09.in :heavy_check_mark: AC 5 ms 2 MB
Rust 51_random_large_00.in :heavy_check_mark: AC 115 ms 12 MB
Rust 51_random_large_01.in :heavy_check_mark: AC 97 ms 10 MB
Rust 51_random_large_02.in :heavy_check_mark: AC 93 ms 10 MB
Rust 51_random_large_03.in :heavy_check_mark: AC 98 ms 15 MB
Rust 51_random_large_04.in :heavy_check_mark: AC 64 ms 12 MB
Rust 51_random_large_05.in :heavy_check_mark: AC 142 ms 19 MB
Rust 51_random_large_06.in :heavy_check_mark: AC 73 ms 10 MB
Rust 51_random_large_07.in :heavy_check_mark: AC 42 ms 10 MB
Rust 51_random_large_08.in :heavy_check_mark: AC 68 ms 12 MB
Rust 51_random_large_09.in :heavy_check_mark: AC 121 ms 10 MB
Rust 52_MIN_00.in :heavy_check_mark: AC 6 ms 2 MB
Rust 53_MAX_00.in :heavy_check_mark: AC 158 ms 21 MB
Rust 53_MAX_01.in :heavy_check_mark: AC 149 ms 21 MB
Rust 53_MAX_02.in :heavy_check_mark: AC 152 ms 19 MB
Rust 53_MAX_03.in :heavy_check_mark: AC 149 ms 19 MB
Rust 53_MAX_04.in :heavy_check_mark: AC 155 ms 21 MB
Rust 53_MAX_05.in :heavy_check_mark: AC 146 ms 19 MB
Rust 53_MAX_06.in :heavy_check_mark: AC 148 ms 20 MB
Rust 53_MAX_07.in :heavy_check_mark: AC 146 ms 19 MB
Rust 53_MAX_08.in :heavy_check_mark: AC 152 ms 20 MB
Rust 53_MAX_09.in :heavy_check_mark: AC 156 ms 21 MB
Rust 54_Nsmall_00.in :heavy_check_mark: AC 84 ms 13 MB
Rust 54_Nsmall_01.in :heavy_check_mark: AC 142 ms 11 MB
Rust 54_Nsmall_02.in :heavy_check_mark: AC 122 ms 15 MB
Rust 54_Nsmall_03.in :heavy_check_mark: AC 52 ms 7 MB
Rust 54_Nsmall_04.in :heavy_check_mark: AC 132 ms 14 MB
Rust 54_Nsmall_05.in :heavy_check_mark: AC 28 ms 4 MB
Rust 54_Nsmall_06.in :heavy_check_mark: AC 63 ms 7 MB
Rust 54_Nsmall_07.in :heavy_check_mark: AC 95 ms 9 MB
Rust 54_Nsmall_08.in :heavy_check_mark: AC 141 ms 13 MB
Rust 54_Nsmall_09.in :heavy_check_mark: AC 102 ms 12 MB
Rust 55_Msmall_00.in :heavy_check_mark: AC 22 ms 3 MB
Rust 55_Msmall_01.in :heavy_check_mark: AC 74 ms 7 MB
Rust 55_Msmall_02.in :heavy_check_mark: AC 20 ms 3 MB
Rust 55_Msmall_03.in :heavy_check_mark: AC 48 ms 5 MB
Rust 55_Msmall_04.in :heavy_check_mark: AC 36 ms 4 MB
Rust 55_Msmall_05.in :heavy_check_mark: AC 52 ms 5 MB
Rust 55_Msmall_06.in :heavy_check_mark: AC 58 ms 6 MB
Rust 55_Msmall_07.in :heavy_check_mark: AC 39 ms 4 MB
Rust 55_Msmall_08.in :heavy_check_mark: AC 68 ms 6 MB
Rust 55_Msmall_09.in :heavy_check_mark: AC 56 ms 5 MB
Rust 56_DEsmall_00.in :heavy_check_mark: AC 108 ms 12 MB
Rust 56_DEsmall_01.in :heavy_check_mark: AC 129 ms 19 MB
Rust 56_DEsmall_02.in :heavy_check_mark: AC 95 ms 14 MB
Rust 56_DEsmall_03.in :heavy_check_mark: AC 74 ms 11 MB
Rust 56_DEsmall_04.in :heavy_check_mark: AC 91 ms 9 MB
Rust 56_DEsmall_05.in :heavy_check_mark: AC 42 ms 10 MB
Rust 56_DEsmall_06.in :heavy_check_mark: AC 59 ms 11 MB
Rust 56_DEsmall_07.in :heavy_check_mark: AC 77 ms 11 MB
Rust 56_DEsmall_08.in :heavy_check_mark: AC 25 ms 4 MB
Rust 56_DEsmall_09.in :heavy_check_mark: AC 34 ms 8 MB
Rust 60_challenge_00.in :heavy_check_mark: AC 143 ms 19 MB
Rust 60_challenge_01.in :heavy_check_mark: AC 160 ms 15 MB
Back to top page