셀프 넘버 - 4673
Category: Baekjoon
Tags: bruteforce algorithm
4673번: 셀프 넘버
\(d(75) = 75 + 7 + 5 = 87\)
$d$는 $n$과 $n$의 각 자리의 수를 더하는 함수이고, 이때 $75$는 $87$의 생성자라고 할 때, $1$부터 $10000$ 이하의 생성자가 아닌 수를 출력하는 문제
맞았습니다! 풀이
몫 연산이랑 나머지 연산으로 생성자를 계산해서 모두 저장한 배열을 만들고 해당 배열에 없는 숫자들을 모두 출력하는 방식으로 구현했다.
self_num = []
for n in range(1, 10001):
sum = n
while n > 0:
sum += n % 10
n = n // 10
self_num.append(sum)
for n in range(1, 10001):
if n not in self_num:
print(n)