From 4b71b6983ae805d7ea39efe27f570444a2b60128 Mon Sep 17 00:00:00 2001 From: Dimitri Sokolyuk Date: Sat, 1 Jun 2024 00:00:29 +0200 Subject: Solve difference-of-squares --- rust/difference-of-squares/src/lib.rs | 6 +++--- rust/difference-of-squares/tests/difference-of-squares.rs | 8 -------- 2 files changed, 3 insertions(+), 11 deletions(-) (limited to 'rust') diff --git a/rust/difference-of-squares/src/lib.rs b/rust/difference-of-squares/src/lib.rs index fdf2e93..fa4847c 100644 --- a/rust/difference-of-squares/src/lib.rs +++ b/rust/difference-of-squares/src/lib.rs @@ -1,11 +1,11 @@ pub fn square_of_sum(n: u32) -> u32 { - todo!("square of sum of 1...{n}") + (1..=n).fold(0, |a,b| a+b).pow(2) } pub fn sum_of_squares(n: u32) -> u32 { - todo!("sum of squares of 1...{n}") + (1..=n).fold(0, |a,b| a+b.pow(2)) } pub fn difference(n: u32) -> u32 { - todo!("difference between square of sum of 1...{n} and sum of squares of 1...{n}") + square_of_sum(n) - sum_of_squares(n) } diff --git a/rust/difference-of-squares/tests/difference-of-squares.rs b/rust/difference-of-squares/tests/difference-of-squares.rs index 672faae..65c4acb 100644 --- a/rust/difference-of-squares/tests/difference-of-squares.rs +++ b/rust/difference-of-squares/tests/difference-of-squares.rs @@ -6,49 +6,41 @@ fn square_of_sum_1() { } #[test] -#[ignore] fn square_of_sum_5() { assert_eq!(225, squares::square_of_sum(5)); } #[test] -#[ignore] fn square_of_sum_100() { assert_eq!(25_502_500, squares::square_of_sum(100)); } #[test] -#[ignore] fn sum_of_squares_1() { assert_eq!(1, squares::sum_of_squares(1)); } #[test] -#[ignore] fn sum_of_squares_5() { assert_eq!(55, squares::sum_of_squares(5)); } #[test] -#[ignore] fn sum_of_squares_100() { assert_eq!(338_350, squares::sum_of_squares(100)); } #[test] -#[ignore] fn difference_1() { assert_eq!(0, squares::difference(1)); } #[test] -#[ignore] fn difference_5() { assert_eq!(170, squares::difference(5)); } #[test] -#[ignore] fn difference_100() { assert_eq!(25_164_150, squares::difference(100)); } -- cgit v1.2.3