-
[백준] 2577번 : 숫자의 개수 - 코틀린(Kotlin)알고리즘/백준 2022. 11. 1. 00:01
https://www.acmicpc.net/problem/2577
문제 해석
곱셈의 결과로 어떤 숫자가 몇 번 나왔는지 구하는 문제입니다.
코드
fun main() { val counts = Array(10){0} val a = readLine()!!.toInt() val b = readLine()!!.toInt() val c = readLine()!!.toInt() val multipleResult = (a * b * c).toString() for(index in multipleResult.indices){ val curNumber = multipleResult[index].digitToInt() counts[curNumber]++ } val stringBuilder =StringBuilder() for(index in counts.indices){ stringBuilder.append("${counts[index]}\n") } println(stringBuilder.toString()) }
다른분들의 코드에서 배운 점
fun main(){ val result = IntArray(10) var inputProduct = 1 for (i in 0 until 3){ inputProduct *= readln().toInt() } val string = inputProduct.toString() string.forEach { result[it.toString().toInt()]++ } result.forEach { println(it) } }
입출력 부분도 반복문을 활용하여 간단하게 구성하였고
for 문대신 함수형 프로그래밍을 사용했습니다.
stringBuilder를 사용하면 성능상 이점이 있을 것이라고 생각했습니다.
내부적으로 최적화가 되는지 오히려 4ms더 빠른 성능을 보여줬습니다.
'알고리즘 > 백준' 카테고리의 다른 글
[백준] 1157번 : 단어 공부 - 코틀린(kotlin) (0) 2022.11.03 [백준] 1546번 : 평균 - 코틀린(kotlin) (0) 2022.11.02 [백준] 2753번: 윤년 - 코틀린(Kotlin) (0) 2022.10.31 [백준] 2884번 : 알람 시계 - 코틀린(kotlin) (0) 2022.10.30 [백준] 2908번 : 상수 - 코틀린(kotlin) (0) 2022.10.29