用python刷lintcode算法记录1-Fizz Buzz 问题

426 阅读1分钟

算法描述:

 

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

  • 如果这个数被3整除,打印fizz.
  • 如果这个数被5整除,打印buzz.
  • 如果这个数能同时被35整除,打印fizz buzz.
  • 如果这个数既不能被 3 整除也不能被 5 整除,打印数字本身。

样例

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

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

我的代码:

class Solution:
    """
    @param n: An integer
    @return: A list of strings.
    """
    def fizzBuzz(self, n):
        # write your code here
        str_list = []
        for i in range(1,n+1):
            if i%3 == 0:
        		if i%5 == 0:
        			str_list.append('fizz buzz')
        		else:
        		    str_list.append('fizz')
        	else:
        		if i%5 == 0:
        			str_list.append('buzz')
        		else:
        		    str_list.append(str(i))
        return str_list