본문 바로가기

IT/알고리즘

[알고리즘] FizzBuzz 알고리즘

안녕하세요 남갯입니다.

 

오늘은 FizzBuzz 알고리즘에 대해 알아보도록 하겠습니다.

 

ex) 

input = 15



3의 배수는 Fizz, 5의 배수는 Fuzz, 3,5의 배수는 FizzBuzz


output = ["1"

 "2"

 "Fizz"

 "4"

 "5"

 "Buzz"

 "Fizz"

 "7"

 "8"

 "Fizz"

 "Buzz"

 "11"

 "Fizz"

 "13"

 "14"

 "FizzBuzz"]

...



fun FizzBuzz(input: Int): Array<String?> {
val array: Array<String?> = arrayOfNulls(input)

for (i in 0 until input) {
val index = i + 1

if ((index % 3 == 0) and (index % 5 == 0)) {
array[i] = "FizzBuzz"
} else if (index % 3 == 0) {
array[i] = "Fizz"
} else if (index % 5 == 0) {
array[i] = "Buzz"
} else {
array[i] = index.toString()
}
Log.e("FizzBuzz", "index : $index array = ${array[i]}")
}

return array
}