码迷,mamicode.com
首页 > 其他好文 > 详细

LintCode 第一题fizz buzz

时间:2015-03-15 07:11:49      阅读:139      评论:0      收藏:0      [点我收藏+]

标签:vector

【题目】

给你一个整数n. 从1到n按照下面的规则打印每个数:

如果这个数被3整除,打印fizz

如果这个数被5整除,打印buzz

如果这个数能同时被3和5整除,打印fizz buzz

样例

比如n=15, 返回一个字符串数组:

["1", "2", "fizz", "4", "buzz", "fizz", "7", "8", "fizz", "buzz", "11", "fizz", "13", "14", "fizz buzz"]




【C++ 代码】

class Solution {
public:
    /**
     * param n: As description.
     * return: A list of strings.
     */
    vector<string> fizzBuzz(int n) {
        vector<string> results;
        for (int i = 1; i <= n; i++) {
            if (i % 15 == 0) {
                results.push_back("fizz buzz");
            } else if (i % 5 == 0) {
                results.push_back("buzz");
            } else if (i % 3 == 0) {
                results.push_back("fizz");
            } else {
                results.push_back(to_string(i));
            }
        }
        return results;
    }
};


【我的错误】

vector 属于 STL,相当于一个高级、变长的数组,需要#include<vector>

应该阅读清楚题意,当能跟被3且被5 整除时输出 ‘fizz buzz‘

在循环里面,应该使用自增的 i 进行判断、输出,我错输入成为 n ,导致输出一直是 ‘fizz buzz‘

vector::push_back(n) 是错误的,应该将 int n 转化成 string ,如 to_string(i)


本文出自 “ryanscn” 博客,请务必保留此出处http://ryanscn.blog.51cto.com/2725212/1620445

LintCode 第一题fizz buzz

标签:vector

原文地址:http://ryanscn.blog.51cto.com/2725212/1620445

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!