LeetCodeDay25 —— Fizz Buzz

2018-05-03  本文已影响0人  GoMomi

412. Fizz Buzz

描述
示例
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;
  }
};
上一篇 下一篇

猜你喜欢

热点阅读