26: Refactor solution for Rust track exercise "Sum Of Multiples".

[?]
Aaw9nJhsNmfzFih9mKyNw9mV8CgERXJkRa1kK1Kx3LQH
Sep 1, 2021, 12:23 PM
MXKH26RWBUYSP4AVDTCS3GWPGV4PKUMXEMEJDRGYEUTIAKWLTUQAC

Dependencies

  • [2] S746FJJE 25: Refactor solution for Rust track exercise "Sum Of Multiples".
  • [3] QK6XE5XF 13: Add Rust track exercises "Beer Song", "Proverb", "Difference Of Squares", "Sum Of Multiples", "Grains", "Prime Factors", "Armstrong Numbers" and "Reverse String".
  • [4] SPUEEQZQ 24: Add WIP solution for Rust track exercise "Sum Of Multiples".

Change contents

  • replacement in rust/sum-of-multiples/src/lib.rs at line 238
    [3.5724][3.5724:5792](),[3.5792][2.0:233]()
    |accumulator_a, subset_size| -> Result<u32, CreationError<u32>> {
    let sum = CombinationsWithoutReplacement::new(factors, subset_size)?.fold(
    0,
    |accumulator_b, combination| {
    accumulator_b
    + UnsignedMultiples::new(combination.iter().product(), limit).sum::<u32>()
    },
    );
    [3.5724]
    [3.5792]
    |accumulator, subset_size| -> Result<u32, CreationError<u32>> {
    let sum: u32 = CombinationsWithoutReplacement::new(factors, subset_size)?
    .map(|combination| {
    UnsignedMultiples::new(combination.iter().product(), limit).sum::<u32>()
    })
    .sum();
  • replacement in rust/sum-of-multiples/src/lib.rs at line 245
    [3.5824][2.234:258]()
    accumulator_a + sum
    [3.5824]
    [3.6090]
    accumulator + sum
  • replacement in rust/sum-of-multiples/src/lib.rs at line 247
    [3.6102][2.259:283]()
    accumulator_a - sum
    [3.6102]
    [3.6368]
    accumulator - sum