5个版本

0.2.2 2020年10月26日
0.2.1 2019年7月8日
0.2.0 2019年7月8日
0.1.1 2018年8月5日
0.1.0 2018年8月4日

#14 in #competitive

MIT/Apache

11KB
267 代码行,不包括注释

comp_input

crates.io docs.rs

竞技编程输入库。

示例:加权图作为边列表

#[macro_use]
extern crate comp_input;

fn main() {
    input! {
        n, m: usize,
        edges: [(usize1, usize1, u64); m],
    }
}

变量 nmedges 将作为作用域中的局部变量存在。

输入片段列表

片段 描述
u8, u16, u32, u64, usize 无符号整数(十进制)
i8, i16, i32, i64, isize 有符号整数(十进制,可选 +/- 前缀)
usize1 usize 类似,但结果减 1(对于 1 基输入格式很有用)
char 单个字符
String 非ASCII空白字符的序列
(T1, T2), (T1, T2, T3), ... 其他输入片段的异构元组,按顺序读取
[<T>; <n:expr>] n 个项目解析与 T,作为 Vec 返回
[<T>; const <n>] n 个项目解析与 T,在数组中。 n 必须是编译时常量

TODO

  • 允许任意解析函数
  • 分支
  • 循环(例如解析到 -1)

许可证

MIT/Apache-2.0

依赖项

~170–315KB