-
[백준 4673] [Kotlin] 셀프 넘버백준 알고리즘 2021. 7. 15. 13:46
fun main() { val max = 10000 var arr = IntArray(max) var ori = 1 // 생성자 만드는 함수 fun d(n: Int) { var num = n var sum = n // 생성자 만들기 while (num > 0) { sum += num%10 num /= 10 } // 생성자가 있으면 배열에 저장, 재귀함수 if (sum >= max) { return } else { arr[sum]++ d(sum) } } // max 까지 반복 while (ori < max) { d(ori++) } // 셀프 넘버 추출 for (i in arr.indices) { if (i != 0 && arr[i] == 0) { println(i) } } }
메모리 시간 언어 코드 길이 12888 KB 172 ms Kotlin (JVM) 693 B '백준 알고리즘' 카테고리의 다른 글
[백준 11654] [Kotlin] 아스키 코드 (0) 2021.07.15 [백준 1065] [Kotlin] 한수 (0) 2021.07.15 [백준 4344] [Kotlin] 평균은 넘겠지 (0) 2021.07.15 [백준 8958] [Kotlin] OX퀴즈 (0) 2021.07.15 [백준 1546] [Kotlin] 평균 (0) 2021.07.15