문제
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
'CodingTest > Baekjoon' 카테고리의 다른 글
[baekjoon] 백준 1929번(파이썬): 소수 구하기 (0) | 2022.08.07 |
---|---|
[baekjoon] 백준 7568번(파이썬): 덩치 (0) | 2022.07.21 |
[baekjoon] 백준 1504번(파이썬): 특정한 최단 경로 (0) | 2022.06.27 |
[baekjoon] 백준 2573번(파이썬): 빙산 (0) | 2022.06.26 |
[baekjoon] 백준 1806번(파이썬): 부분합 (0) | 2022.06.24 |