Submission #25609496


Source Code Expand

use std::collections::BTreeSet;

use proconio::input;

fn main() {
    input! {
        l: usize,
        q: usize,
        cx: [(usize, usize); q],
    };
    let mut v = BTreeSet::new();
    v.insert(0);
    v.insert(l);
    for (c_i, x_i) in cx {
        let r = *v.range(x_i + 1..=l).next().unwrap();
        let l = *v.range(0..=x_i).next_back().unwrap();
        match c_i {
            1 => {
                v.insert(x_i);
            }
            2 => {
                println!("{}", r - l);
            }
            _ => unreachable!(),
        }
    }
}

Submission Info

Submission Time
Task D - Cutting Woods
User bouzuya
Language Rust (1.42.0)
Score 400
Code Size 568 Byte
Status AC
Exec Time 315 ms
Memory 13524 KiB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 400 / 400
Status
AC × 3
AC × 15
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_max_random_00.txt, 01_max_random_01.txt, 01_max_random_02.txt, 01_max_random_03.txt, 01_max_random_04.txt, 02_all_1_00.txt, 03_all_2_00.txt, 04_hack_00.txt, 04_hack_01.txt, 04_hack_02.txt, 04_hack_03.txt, 04_hack_04.txt
Case Name Status Exec Time Memory
00_sample_00.txt AC 1 ms 1960 KiB
00_sample_01.txt AC 2 ms 2088 KiB
00_sample_02.txt AC 2 ms 2052 KiB
01_max_random_00.txt AC 241 ms 8808 KiB
01_max_random_01.txt AC 246 ms 8984 KiB
01_max_random_02.txt AC 240 ms 8992 KiB
01_max_random_03.txt AC 244 ms 9028 KiB
01_max_random_04.txt AC 242 ms 8964 KiB
02_all_1_00.txt AC 116 ms 10784 KiB
03_all_2_00.txt AC 315 ms 8120 KiB
04_hack_00.txt AC 103 ms 11304 KiB
04_hack_01.txt AC 65 ms 13524 KiB
04_hack_02.txt AC 235 ms 8944 KiB
04_hack_03.txt AC 226 ms 8636 KiB
04_hack_04.txt AC 231 ms 8904 KiB