提出 #59199965


ソースコード 拡げる

use proconio::{input, source::Readable};

fn main() {
    input! {
        q: usize,
        queries: [Query; q],
    }
    let mut stack = vec![];
    for query in queries {
        match query {
            Query::Q1(x) => stack.push(x),
            Query::Q2 => println!("{}", stack.last().unwrap()),
            Query::Q3 => {
                stack.pop();
            }
        }
    }
}

enum Query {
    // ここを書き換える
    Q1(String),
    Q2,
    Q3,
}

impl Readable for Query {
    type Output = Query;
    fn read<R: std::io::BufRead, S: proconio::source::Source<R>>(source: &mut S) -> Self::Output {
        match u8::read(source) {
            // ここを書き換える
            1 => Query::Q1(String::read(source)),
            2 => Query::Q2,
            3 => Query::Q3,
            _ => unreachable!(),
        }
    }
}

提出情報

提出日時
問題 A51 - Stack
ユーザ hayatroid
言語 Rust (rustc 1.70.0)
得点 1000
コード長 852 Byte
結果 AC
実行時間 36 ms
メモリ 12024 KiB

ジャッジ結果

セット名 Sample All
得点 / 配点 0 / 0 1000 / 1000
結果
AC × 1
AC × 7
セット名 テストケース
Sample sample_01
All max_01, random_01, random_02, random_03, random_04, random_05, sample_01
ケース名 結果 実行時間 メモリ
max_01 AC 10 ms 12024 KiB
random_01 AC 1 ms 1956 KiB
random_02 AC 0 ms 1988 KiB
random_03 AC 1 ms 1960 KiB
random_04 AC 4 ms 2224 KiB
random_05 AC 36 ms 6528 KiB
sample_01 AC 1 ms 1984 KiB