Sum of Multiples of 3 and 5

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

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) —

推荐阅读:
冬日趣事作文100字  妈妈母亲节快乐作文300字  光辉的转折作文900字  金钟水库作文400字  三下乡之山雨欲来无征兆  擀面皮作文450字  元旦节的作文200字  最大公因数是6,最小公倍数是90  3a+2b=54,2a+3b=56,求 ab 的值?  经过了多少分钟 
评论列表
添加评论