diff --git a/rust/grains/src/lib.rs b/rust/grains/src/lib.rs index ab7bb6c..1681d66 100644 --- a/rust/grains/src/lib.rs +++ b/rust/grains/src/lib.rs @@ -1,7 +1,10 @@ pub fn square(s: u32) -> u64 { + if s == 0 || s > 64 { + panic!("Square must be between 1 and 64"); + } 2_u64.pow(s - 1) } pub fn total() -> u64 { - (1..=64).map(|x| square(x)).sum() + (1..=64).map(square).sum() }