TanX的博客

逼自己优秀,然后骄傲的生活

LeetCode-Fizz_Buzz

题目:

Write a program that outputs the string representation of numbers from 1 to n.

But for multiples of three it should output “Fizz” instead of the number and for the multiples of five output “Buzz”. For numbers which are multiples of both three and five output “FizzBuzz”.

Example:

n = 15,

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


翻译:

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

但是对于三的倍数要输出”Fizz“而不是数字,对于五要输出”Buzz“。对于既是三又是五的倍数的数字输出”Fizz Buzz“。

例子:

n = 15,

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


思路:

思路简单,不说了,直接看代码。


C++代码(Visual Studio 2017):

#include "stdafx.h"
#include <iostream>
#include <vector>
#include <string>
using namespace std;

class Solution {
public:
	vector<string> fizzBuzz(int n) {
		vector<string> result;
		for (int i = 1; i <= n; i++) {
			if ((i % 3 == 0) && (i % 5 == 0)) {
				result.push_back("FizzBuzz");
				continue;
			}
			if (i % 3 == 0) {
				result.push_back("Fizz");
				continue;
			}
			if (i % 5 == 0) {
				result.push_back("Buzz");
				continue;
			}
			else {
				result.push_back(to_string(i));
			}
		}
		return result;
	}
};

int main()
{
	Solution s;
	int n = 15;
	vector<string> result;
	result = s.fizzBuzz(n);
	for (int i = 0; i < result.size(); i++) {
		cout << result[i] << " ";
	}
    return 0;
}

阅读更多
文章标签: Leet Code Fizz Buzz
个人分类: LeetCode‘Exercise
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

不良信息举报

LeetCode-Fizz_Buzz

最多只允许输入30个字

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭