题解 | #杨辉三角的变形#

杨辉三角的变形

http://www.nowcoder.com/practice/8ef655edf42d4e08b44be4d777edbf43

找规律题,n除开1,2的情况,其余对四取余。
规律:观察每行第二个数字,会发现因为其上一行前三个为 0(空白处第0个)、1x,所以每行第二个一定是上一行第二个的数加一,所以从第二行开始,每行第二个自然是奇偶数交替,所以除第一行外,奇数行第二个数字一定是偶数,这就是下面的_所指的最后一种情况。

use std::io;
fn main() {
    let mut s = String::new();
    io::stdin().read_line(&mut s).expect("Failed to read line");
    let n = s.trim().parse::<u32>().unwrap_or(1);
    if n < 3 {
        println!("-1");
    }else{
        match n % 4 {
            0 => println!("3"),
            2 => println!("4"),
            _ => println!("2"),
        }        
    }
}
用 Rust 刷华为机试HJ 文章被收录于专栏

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

全部评论

相关推荐

点赞 评论 收藏
分享
不知道怎么取名字_:玩游戏都写到简历上了啊
投递BOSS直聘等公司6个岗位
点赞 评论 收藏
分享
评论
点赞
1
分享

创作者周榜

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