use crate::Solution;
problem!(Problem0001, 1, "Multiples of 3 or 5");
impl Solution for Problem0001 {
fn solve(&self) -> String {
const UPPER_LIMIT: i32 = 1000;
let n = (UPPER_LIMIT - 1) / 3;
let m = (UPPER_LIMIT - 1) / 5;
let k = (UPPER_LIMIT - 1) / 15;
let sum_3 = 3 * n * (n + 1) / 2;
let sum_5 = 5 * m * (m + 1) / 2;
let sum_15 = 15 * k * (k + 1) / 2;
(sum_3 + sum_5 - sum_15).to_string()
}
}