[알각코] 백준 4673번 - 셀프 넘버

백준 4673번


n = 1
number = set()

for i in range(1, 10000):
    number.add(i)

while n <= 10000:
    nlist = [int(i) for i in list(str(n))]
    nlist.append(n)
    if sum(nlist) in number:
        number.remove(sum(nlist))
    n += 1

print('\n'.join(list(map(str, number))))

Screen Shot 2021-08-02 at 2 06 32 PM

처음엔 뭔가 중복되는 값이 있을 것 같다 생각해서

set함수를 사용하는 것으로 코드를 바꿔적용했더니 쉽게 정답이 나왔당