leetcode 412. Fizz Buzz(python)

题目链接

题目描述:
写一个程序,输出从 1 到 n 数字的字符串表示。

  1. 如果 n 是3的倍数,输出“Fizz”;

  2. 如果 n 是5的倍数,输出“Buzz”;

3.如果 n 同时是3和5的倍数,输出 “FizzBuzz”。

示例: n = 15,
返回:
[
“1”,
“2”,
“Fizz”,
“4”,
“Buzz”,
“Fizz”,
“7”,
“8”,
“Fizz”,
“Buzz”,
“11”,
“Fizz”,
“13”,
“14”,
“FizzBuzz”
]
解题思路:
由于if 判定只要满足条件,就不会执行后面的语句,所以可以把判断同时为3,5的倍数放在前面,在判断其他的条件。

class Solution:
    def fizzBuzz(self, n: int) -> List[str]:
        res=[]
        for i in range(1,n+1):
            if i%3==0 and i%5==0:
                res.append("FizzBuzz")
            elif  i%3==0 :
                 res.append("Fizz")
            elif  i%5==0 :
                 res.append("Buzz")
            else :
                res.append(str(i))
        return res

猜你喜欢

转载自blog.csdn.net/weixin_44740082/article/details/88875182