iT邦幫忙

2024 iThome 鐵人賽

0
佛心分享-刷題不只是刷題

刷經典 LeetCode 題目系列 第 71

經典LeetCode 412. Fizz Buzz

  • 分享至 

  • xImage
  •  

題目:

這題的目標是針對給定的數字範圍 n,產生一個包含特定規則的字串清單:

  • 如果數字是 3 的倍數,加入 "Fizz"
  • 如果數字是 5 的倍數,加入 "Buzz"
  • 如果數字是 3 和 5 的倍數,加入 "FizzBuzz"
  • 否則加入該數字的字串形式。

解題思路

這題是考字串處理能力,直接檢查每個數字是否符合條件,並加入對應的字串,

class Solution {
public:
    vector<string> fizzBuzz(int n) {
        vector<string> res;
        for (int i = 1; i <= n; i++) {
            if (i % 3 == 0 && i % 5 == 0)
                res.push_back("FizzBuzz");
            else if (i % 3 == 0)
                res.push_back("Fizz");
            else if (i % 5 == 0)
                res.push_back("Buzz");
            else
                res.push_back(to_string(i));
        }
        return res;
    }
};

時間複雜度:O(n)
空間複雜度:O(n),最終回傳結果陣列需要儲存 n 個字串。

參考:
#412. Fizz Buzz


上一篇
經典LeetCode 387. First Unique Character in a String
下一篇
經典LeetCode 58. Length of Last Word
系列文
刷經典 LeetCode 題目80
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言