跳到主要内容

2652.倍数求和

· 阅读需 2 分钟

1、题干

给你一个正整数 n ,请你计算在 [1,n] 范围内能被 357 整除的所有整数之和。

返回一个整数,用于表示给定范围内所有满足约束条件的数字之和。

 

示例 1:

输入:n = 7
输出:21
解释:[1, 7] 范围内能被 357 整除的所有整数分别是 3567 。数字之和为 21

示例 2:

输入:n = 10
输出:40
解释:[1, 10] 范围内能被 357 整除的所有整数分别是 3567910 。数字之和为 40

示例 3:

输入:n = 9
输出:30
解释:[1, 9] 范围内能被 357 整除的所有整数分别是 35679 。数字之和为 30

提示:

  • 1 <= n <= 103

2、思路

模拟

3、代码

impl Solution {
pub fn sum_of_multiples(n: i32) -> i32 {
let mut ans: i32 = 0;

for i in 1..=n {
if i % 3 == 0 || i % 5 == 0 || i % 7 == 0 {
ans += i;
}
}

return ans;
}
}
function sumOfMultiples(n: number): number {
let ans = 0;
for (let i = 1; i <= n; i++) {
if (i % 3 === 0 || i % 5 === 0 || i % 7 === 0) ans += i;
}
return ans;
};

4、复杂度

  • 时间复杂度: O(n)O(n)
  • 空间复杂度: O(1)O(1)