CodingTest/Baekjoon

[baekjoon] 백준 4673번(파이썬): 셀프 넘버

JunJangE 2022. 6. 28. 11:28

문제

 

4673번: 셀프 넘버

셀프 넘버는 1949년 인도 수학자 D.R. Kaprekar가 이름 붙였다. 양의 정수 n에 대해서 d(n)을 n과 n의 각 자리수를 더하는 함수라고 정의하자. 예를 들어, d(75) = 75+7+5 = 87이다. 양의 정수 n이 주어졌을 때,

www.acmicpc.net

알고리즘

- 함수와 반복문을 통해 셀프 넘버가 아닌 수를 찾는다.

- 찾은 후 1부터 10001번 반복하여 셀프 넘버가 아닌 수와 비교하여 셀프 넘버인 수를 출력한다.

코드

# 셀프 넘버가 아닌 수를 찾는 함수
def solution(n):
    n = n + sum(map(int, str(n)))

    return n


answer = []

# 반복문을 통해 셀프 넘버가 아닌 수를 찾는다.
for i in range(1, 10001):
    answer.append(solution(i))

# 반복문을 통해 셀프 넘버가 포함되어 있지 않은 수를 출력
for i in range(1, 10001):
    if i not in answer:
        print(i)

github

 

GitHub - junjange/CodingTest: 내가 푼 코딩 테스트 문제와 해결법

내가 푼 코딩 테스트 문제와 해결법. Contribute to junjange/CodingTest development by creating an account on GitHub.

github.com