문제링크
풀이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
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
}
}