백준 4673 셀프 넘버 not in
문제링크: https://www.acmicpc.net/problem/4673
난 처음부터 이 문제 알고리즘 짜는거에 해맬것 같았다....
지금 보면 간단하지만, 중간에 길을 계속 잃는 느낌이 들었다.
집중을 못해서 그런건가...
not_self_nums = []
def d(a):
for i in range(1, a):
sum_number = i
for j in range(len(str(i))):
sum_number += int(str(i)[j])
not_self_nums.append(sum_number)
if i not in not_self_nums:
print(i)
d(10000)
일단 처음에 셀프 넘버가 아닌 숫자들이 들어갈 리스트를 선언해 주었다.
그리고 식의 알고리즘인 처음 숫자를 먼저 더하고 그 다음엔 자릿수대로 더하는 것을 표현해 주었고, 그렇게 해서 생성자가 있는 숫자들을 가려내고 그 해당 숫자를 리스트에 넣었다.
그리고 그 리스트에 값이 존재하지 않는 수는 셀프넘버가 아니므로 그 숫자를 출력해 주었다.
(not in활용)
Author And Source
이 문제에 관하여(백준 4673 셀프 넘버 not in), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@yosub1220/백준-4673-셀프-넘버-not-in저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)