题解 | #统计字符#

统计字符

http://www.nowcoder.com/practice/539054b4c33b4776bc350155f7abd8f5

最直观解法:

use std::io;
fn main() {
    let mut s = String::new();
    io::stdin().read_line(&mut s).expect("Failed to read line");
    let mut v = vec![0u32; 4];
    for &i in s.trim().as_bytes() {
        match i {
            32 => v[1] += 1,
            65..=90 | 97..=122 => v[0] += 1,
            48..=57 => v[2] += 1,
            _ => v[3] += 1,
        }
    }
    for &i in v.iter() {
        println!("{}", i);
    }
}

我相信可以用链式写法一步到位,让我想想。

用 Rust 刷华为机试HJ 文章被收录于专栏

用 Rust 刷 HJ100 题,只需要懂基础 Rust 语法就能看懂

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务