<LeetCode> 题9:Fizz Buzz问题

来源:互联网 发布:淘宝上的兰芝是正品吗 编辑:程序博客网 时间:2024/06/05 20:25

题目描述:

给你一个整数n. 从 1 到 n 按照下面的规则打印每个数:
1. 如果这个数被3整除,打印fizz;
2. 如果这个数被5整除,打印buzz;
3. 如果这个数能同时被3和5整除,打印fizz buzz;
4. 如果这个数既不能被3整除,也不能被5整除,打印它本身。

思路:

先判断能否被15整除,然后判断被3整除,然后判断被5整除。注意跳过0。

代码:

#include <iostream>#include <vector>#include <string>using namespace std;vector<string> fizzbuzz(int n){    vector<string> result;    for(int i = 1; i <= n; i++)    {        if(i % 15 == 0)            result.push_back("fizz buzz");        else if(i % 5 == 0)            result.push_back("buzz");        else if(i % 3 == 0)            result.push_back("fizz");        else            result.push_back(to_string(i)); //将int数字转换成string型    }    return result;}int main(){    vector<string> vec;    vec = fizzbuzz(15);    for(vector<string>::iterator iter = vec.begin(); iter != vec.end(); iter++)    {        cout << *iter << endl;    }    system("pause");    return 0;}
0 0
原创粉丝点击