leetcode: 412. Fizz Buzz

kldaji·2021년 12월 16일
1

leetcode

목록 보기
12/56

문제링크

풀이1

  • 3, 5 둘다 약수로 가지는 경우
  • 3 만 약수로 가지는 경우
  • 5 만 약수로 가지는 경우
  • 둘 다 아닌 경우
class Solution {
    fun fizzBuzz(n: Int): List<String> {
        val answer = mutableListOf<String>()
        for (i in 1..n) {
            if (i % 3 == 0 && i % 5 == 0) answer.add("FizzBuzz")
            else if (i % 3 == 0) answer.add("Fizz")
            else if (i % 5 == 0) answer.add("Buzz")
            else answer.add(i.toString())
        }
        return answer
    }
}

풀이2

  • mod 사용하지 않고 해결
class Solution {
    fun fizzBuzz(n: Int): List<String> {
        val answer = mutableListOf<String>()
        var fizz = 1
        var buzz = 1
        for (i in 0 until n) {
            if (fizz == 3 && buzz == 5) {
                answer.add("FizzBuzz")
                fizz = 0
                buzz = 0
            } else if (fizz == 3) {
                answer.add("Fizz")
                fizz = 0
            } else if (buzz == 5) {
                answer.add("Buzz")
                buzz = 0
            } else {
                answer.add((i + 1).toString())
            }
            fizz++
            buzz++
        }
        return answer
    }
}
profile
다양한 관점에서 다양한 방법으로 문제 해결을 지향하는 안드로이드 개발자 입니다.

0개의 댓글