숫자 n이 있다고 가정합니다. 1부터 n까지의 모든 숫자의 문자열 표현을 표시해야 하지만 몇 가지 제약이 있습니다.
- 숫자가 3의 배수이면 숫자 대신 Fizz를 쓰세요.
- 숫자가 5의 배수이면 숫자 대신 Buzz라고 쓰세요.
- 숫자가 3과 5로 나누어 떨어지는 경우 숫자 대신 FizzBuzz를 쓰세요.
이 문제를 해결하기 위해 다음 단계를 따릅니다. −
- 1부터 n까지의 모든 숫자에 대해,
- 숫자가 3과 5로 나누어 떨어지는 경우 "FizzBuzz"를 출력합니다.
- 그렇지 않고 숫자가 3으로 나누어 떨어지는 경우 "Fizz"를 인쇄하십시오.
- 그렇지 않고 숫자가 5로 나누어 떨어지는 경우 "Buzz"를 인쇄합니다.
- 그렇지 않으면 숫자를 문자열로 작성
예시
더 나은 이해를 위해 다음 구현을 살펴보겠습니다. −
class Solution(object): def fizzBuzz(self, n): """ :type n: int :rtype: List[str] """ result = [] for i in range(1,n+1): if i% 3== 0 and i%5==0: result.append("FizzBuzz") elif i %3==0: result.append("Fizz") elif i% 5 == 0: result.append("Buzz") else: result.append(str(i)) return result ob1 = Solution() print(ob1.fizzBuzz(30))
입력
30
출력
["1","2","Fizz","4","Buzz","Fizz","7","8","Fizz","Buzz","11","Fizz", "13","14","FizzBuzz","16","17","Fizz","19","Buzz","Fizz","22","23", "Fizz","Buzz","26","Fizz","28","29","FizzBuzz"]