백준 파이썬 4673 셀프넘버

코드
a = set(range(1, 10001))
gen_num = set()
for i in range(1,10001):
for j in str(i):
i += int(j)
gen_num.add(i)
result = a - gen_num
s_result = sorted(result)
for z in s_result:
print(z)
이 문제도 오랫동안 고민했었는데 드디어 해결했습니다.
착오가 두 가지나 있었는데, 매일 보면서도 이상한 점을 찾아내지 못한 것을 보면 더 꼼꼼함이 필요한 것 같습니다.
착오점은 다음과 같습니다.
이 중에서 2번은 전혀 생각하지 못한 문제였습니다.
찾아보니 집합 자료형은
값 1개를 추가할 때 add
값 여러개를 추가할 때 update
값을 제거할 때 remove
를 사용해야 한다고 합니다.
링크 : https://wikidocs.net/1015