题解 | #杨辉三角的变形#
杨辉三角的变形
http://www.nowcoder.com/practice/8ef655edf42d4e08b44be4d777edbf43
找规律题,n除开1,2的情况,其余对四取余。
规律:观察每行第二个数字,会发现因为其上一行前三个为 0(空白处第0个)、1、x,所以每行第二个一定是上一行第二个的数加一,所以从第二行开始,每行第二个自然是奇偶数交替,所以除第一行外,奇数行第二个数字一定是偶数,这就是下面的_所指的最后一种情况。
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 语法就能看懂

