Leetcode——412.Fizz Buzz——题解+代码实现

一、题目


写一个程序,输出从 1 到 n 数字的字符串表示。

1. 如果 是3的倍数,输出“Fizz”;

2. 如果 是5的倍数,输出“Buzz”;

3.如果 同时是3和5的倍数,输出 “FizzBuzz”。

示例:

n = 15,

返回:
[
    "1",
    "2",
    "Fizz",
    "4",
    "Buzz",
    "Fizz",
    "7",
    "8",
    "Fizz",
    "Buzz",
    "11",
    "Fizz",
    "13",
    "14",
    "FizzBuzz"
]

二、题解思路


  • 题解思路:也就是分四种情况判断吧,如果 是3的倍数,输出“Fizz”;如果 是5的倍数,输出“Buzz”;如果 同时是3和5的倍数,输出 “FizzBuzz”;否则输出当前数字的字符串  "n"  。


三、代码实现


  • C++代码实现
class Solution {
public:
    vector<string> fizzBuzz(int n) 
    {
        vector<string> nums;
        for(int i = 0;i<n;i++)
        {
            if((i+1) % 3 ==0 && (i+1) % 5 !=0)
                nums.push_back("Fizz");
            else if((i+1) % 3 !=0 && (i+1) % 5 ==0)
                nums.push_back("Buzz");
            else if((i+1) % 3 ==0 && (i+1) % 5 ==0)
                nums.push_back("FizzBuzz");
            else
            {
                nums.push_back(to_string(i+1));  //int型转化成string型
            }
        }
        return nums;
    }
};

猜你喜欢

转载自blog.csdn.net/gaoyu1253401563/article/details/90204554