惊落一身雪 发表于 2024-11-6 22:39:52

LeetCode412[Fizz Buzz]

题目

链接

LeetCode412
详情

https://img2024.cnblogs.com/blog/3512406/202411/3512406-20241105154546955-1248669098.png
实例

实例1

https://img2024.cnblogs.com/blog/3512406/202411/3512406-20241105154558075-2062545476.png
实例2

https://img2024.cnblogs.com/blog/3512406/202411/3512406-20241105154604401-394173342.png
实例3

https://img2024.cnblogs.com/blog/3512406/202411/3512406-20241105154614637-1571949372.png
提示

https://img2024.cnblogs.com/blog/3512406/202411/3512406-20241105154619312-610124745.png
题解

思路

定义一个容器 sRetVec,依次遍历每一个数
如果可以被3和5同时整除,则在容器内加入一个元素"FizzBuzz",即 1 == ((0 == (num % 3)) && (0 == (num % 5)))成立,sRetVec.push_back("FizzBuzz")继续遍历下一个数
如果可以被3整除,则在容器内加入一个元素"Fizz",即 0 == (num % 3)成立,sRetVec.push_back("Fizz")继续遍历下一个数
如果可以被3整除,则在容器内加入一个元素"Buzz",即 0 == (num % 5)成立,sRetVec.push_back("Buzz")继续遍历下一个数 
如果均不行,则将数值转换为字符串并加入容器,即sprintf(buff, "%d", num)//char buff = { 0 };sRetVec.push_back(buff)继续遍历下一个数 
最后遍历完输出容器
代码

class Solution {
public:
    vector<string> fizzBuzz(int n) {
      vector<string> sRetVec;

      for (int i = 1; i < n + 1; i++)
      {
            if ((0 == (i % 3)) && (0 == (i % 5)))
                sRetVec.push_back("FizzBuzz");
            else if (0 == (i % 3))
                sRetVec.push_back("Fizz");
            else if (0 == (i % 5))
                sRetVec.push_back("Buzz");
            else
            {
                char buff = { 0 };
                sprintf(buff, "%d", i);
                sRetVec.push_back(buff);
            }
      }
      return sRetVec;
    }
}; 

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: LeetCode412[Fizz Buzz]