欣迪

Given an integer n, return a string array answer (1-indexed) where:

  • answer[i] == "FizzBuzz" if i is divisible by 3 and 5.
  • answer[i] == "Fizz" if i is divisible by 3.
  • answer[i] == "Buzz" if i is divisible by 5.
  • answer[i] == i (as a string) if none of the above conditions are true.

Example 1:

Input: n = 3
Output: ["1","2","Fizz"]

Example 2:

Input: n = 5
Output: ["1","2","Fizz","4","Buzz"]

Example 3:

Input: n = 15
Output: ["1","2","Fizz","4","Buzz","Fizz","7","8","Fizz","Buzz","11","Fizz","13","14","FizzBuzz"]

Constraints:

  • 1 <= n <= 104
var fizzBuzz = function(n) {
    const output = []
    for(let i = 1; i <= n; i++) {
        let str = i % 3 === 0 ? 'Fizz' : ''
        str += i % 5 === 0 ? 'Buzz' : ''
        output.push(str || String(i))
    }
    return output
};

這題其實太簡單了一點,非要說技巧的話就是,用分別把字串除 3 和 5,加入 Fizz 和 Bizz,可以少做兩個同時可以除盡的情形減少 loop 內的複雜度。

訂閱 IT-Monk

訂閱最新文章的發布消息! 😚😚😚
Loading

作者介紹 - 欣迪

欣迪

從設計到寫程式,發現自己有追求前端技巧的自虐傾向。不斷的踩坑,再從坑裡爬出來,慢慢對攀岩有點心得。 目前在多間公司擔任網站設計顧問。 同時也是網站架設公司負責人。