문제
4673번: 셀프 넘버
셀프 넘버는 1949년 인도 수학자 D.R. Kaprekar가 이름 붙였다. 양의 정수 n에 대해서 d(n)을 n과 n의 각 자리수를 더하는 함수라고 정의하자. 예를 들어, d(75) = 75+7+5 = 87이다. 양의 정수 n이 주어졌을 때,
www.acmicpc.net
풀이
반복문을 통해 1부터 10000까지 각 숫자들의 생성자들을 합한다. 합한 숫자가 10000 이하일 때, check 배열을 이용해 저장하고 출력한다.
코드
fun main() {
val check = BooleanArray(10001)
for(i in 1..10000) {
var num = i
var expression = i
while(num>0) {
expression += num % 10
num /= 10
}
if(expression<10001) {
check[expression] = true
}
}
for(i in 1..10000) {
if(!check[i])
println(i)
}
}
'알고리즘 > Baekjoon' 카테고리의 다른 글
[백준] 1316번: 그룹 단어 체커 - Kotlin[코틀린] (0) | 2023.07.17 |
---|---|
[백준] 10828번: 스택 - Kotlin[코틀린] (0) | 2023.07.15 |
[백준] 1065번: 한수 - Kotlin[코틀린] (0) | 2023.07.14 |
[백준] 2839번: 설탕 배달 - Kotlin[코틀린] (0) | 2023.07.12 |
[백준] 1002번: 터렛 - Kotlin[코틀린] (0) | 2023.07.06 |