DOJO004

  • Dashool 創辦人
  • 喜歡調酒
  • Rails、Nextjs、TypeScript

來刷 LeetCode 吧! 03 412. Fizz Buzz

LeetCode

題目分析

給一個整數 n ,回傳一個 “string array”。
該 “string array “的長度為 n 。
若 “string array [ i ]” 能被 3、5 整除, string array [ i ] = “FizzBuzz”
若 “string array [ i ]” 能被 3 整除, string array [ i ] = “Fizz”
若 “string array [ i ]” 能被 5 整除, string array [ i ] = “Buzz”
若 “string array [ i ]” 在以上狀況外, string array [ i ] = “n”

第一直覺

宣告一個 array。
使用 for 迴圈將長度設為 n ,並判斷每一個 i 即可。
var fizzBuzz = function (n) {
  let result = [];
  for (let i = 1; i <= n; i++) {
    if (i % 3 === 0 && i % 5 === 0) {
      result.push("FizzBuzz");
    } else if (i % 3 === 0) {
      result.push("Fizz");
    } else if (i % 5 === 0) {
      result.push("Buzz");
    } else {
      result.push(String(i));
    }
  }
  return result;
};

更簡單的寫法

使用三元運算式。 (但好像不是很好閱讀)
var fizzBuzz = function (n) {
  let result = [];
  for (let i = 1; i <= n; i++) {
    result.push(
      i % 3 === 0 && i % 5 === 0
        ? "FizzBuzz"
        : i % 3 === 0
        ? "Fizz"
        : i % 5 === 0
        ? "Buzz"
        : i.toString()
    );
  }
  return result;
};

版權所有 © 2023 DOJO004

Deployed on Zeabur