[BOJ] 백준 4673 - 셀프 넘버
👩🏻💻 문제
👩🏻💻 정답 코드
numbers = set(range(1,10001))
generated = set()
for i in range(1, 10001):
for j in str(i):
i += int(j)
generated.add(i)
numbers = sorted(numbers-generated)
for i in numbers:
print(i)
numbers
집합에 1부터 10000까지를 넣고, for문을 돌리면서 각 자릿수와 숫자 자체를 generated
집합에 넣어 준다. 집합을 사용함으로써 중복 없이 처리할 수 있고, 마지막에 numbers-generated
으로 차집합을 구해 답을 낼 수 있다. 대신 하나씩 증가하는 순서랬으므로 sorted
으로 정렬 필요
👩🏻💻 Remember
sorted(iterable)
은 iterable
그대로 정렬하는 iterable.sort()
와 다르게 정렬된 새로운 배열을 리턴한다.
Author And Source
이 문제에 관하여([BOJ] 백준 4673 - 셀프 넘버), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@dazzlynn/BOJ-백준-4673-셀프-넘버저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)