题目
写一个程序,输出从 1 到 n 数字的字符串表示。
如果 n 是3的倍数,输出“Fizz”;
如果 n 是5的倍数,输出“Buzz”;
3.如果 n 同时是3和5的倍数,输出 “FizzBuzz”。
示例:
n = 15,
返回:
[
"1",
"2",
"Fizz",
"4",
"Buzz",
"Fizz",
"7",
"8",
"Fizz",
"Buzz",
"11",
"Fizz",
"13",
"14",
"FizzBuzz"
]
C++解法
#include <iostream>
#include <vector>
using namespace std;
class Solution {
public:
vector<string> fizzBuzz(int n) {
vector<string> items;
for (int i =1; i <= n; i++) {
if (i % 15 == 0) items.push_back("FizzBuzz");
else if (i % 3 == 0) items.push_back("Fizz");
else if (i % 5 == 0) items.push_back("Buzz");
else items.push_back(to_string(i));
}
return items;
}
};
int main(int argc, const char * argv[]) {
// insert code here...
Solution solution;
auto items = solution.fizzBuzz(15);
for (auto item: items) cout << item << " "; cout << endl;
return 0;
}
来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/fizz-buzz