Sum of Multiples of 3 and 5

  • 时间:2020-09-10 12:55:33
  • 分类:网络文摘
  • 阅读:127 次

If we list all the natural numbers below 10 that are multiples of 3 or 5, we get 3, 5, 6 and 9. The sum of these multiples is 23. Find the sum of all the multiples of 3 or 5 below 1000.

Let’s declare a Javascript function to sum up all the numbers that are the multiples of 3 or 5.

1
2
3
4
5
6
7
8
9
function sumOfMultiplesThreeAndFive(n) {
   let sum = 0;
   for (let i = 1; i < n; ++ i) {
      if ((i % 3 == 0) || (i % 5 == 0)) {
         sum += i;
      }
   }
   return sum;
}
function sumOfMultiplesThreeAndFive(n) {
   let sum = 0;
   for (let i = 1; i < n; ++ i) {
      if ((i % 3 == 0) || (i % 5 == 0)) {
         sum += i;
      }
   }
   return sum;
}

Calling this function with input 1000 gives us the answer of 233168.

The runtime complexity of the above Javascript code is O(N) and the space requirement is O(1) constant.

Another modern Javascript implementation based on Map and Reduce:

1
2
3
4
5
function sumOfMultiplesThreeAndFive(n) {
    return [...Array(n - 1).keys()].map(i =>i+1).
          filter(x => (x%3==0||x%5==0)).
          reduce((x, y) => x + y, 0);
}
function sumOfMultiplesThreeAndFive(n) {
    return [...Array(n - 1).keys()].map(i =>i+1).
          filter(x => (x%3==0||x%5==0)).
          reduce((x, y) => x + y, 0);
}

–EOF (The Ultimate Computing & Technology Blog) —

推荐阅读:
钟声的问题  越减越多的问题  数图形的问题  一笔画问题  我们家的清明习俗  悲惨童年|小学作文  北京春节的习俗  快乐艺术节  我爱秋天的凄凉  赛龙舟比赛 
评论列表
添加评论