LeetCodeDay25 —— Fizz Buzz

412. Fizz Buzz

描述
  • 写一个程序,输出从 1 到 n 数字的字符串表示。
  • 如果 n 是3的倍数,输出“Fizz”;
  • 如果 n 是5的倍数,输出“Buzz”;
  • 如果 n 同时是3和5的倍数,输出 “FizzBuzz”。
示例
n = 15,
返回:
[
    "1",
    "2",
    "Fizz",
    "4",
    "Buzz",
    "Fizz",
    "7",
    "8",
    "Fizz",
    "Buzz",
    "11",
    "Fizz",
    "13",
    "14",
    "FizzBuzz"
]
思路
  1. 一个简单的求余的算法。根据不同的情况添加不同的结果到Vector中。
  2. std:to_string可以方便的将int转化为string
  3. 将待定的字符串定义成常量是个好习惯。
class Solution_412 {
 public:
  vector<string> fizzBuzz(int n) {
    if (n <= 0) vector<string>();
    string three = "Fizz";
    string five = "Buzz";
    string multiple = "FizzBuzz";
    vector<string> res;
    for (int i = 1; i <= n; ++i) {
      if (i % 3 == 0 && i % 5 == 0)
        res.push_back(multiple);
      else if (i % 3 == 0)
        res.push_back(three);
      else if (i % 5 == 0)
        res.push_back(five);
      else
        res.push_back(to_string(i));
    }
    return res;
  }
};
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容