문제
풀이
- 구현
- 1부터 10000까지 리스트에 담고, n과 n의 각 자리수의 합이 10000보다 작고, 리스트 안에 존재하는 숫자라면 리스트에서 제외시켜준다. 해당 리스트에는 셀프넘버만 존재하게 된다
코드
arr = [ i for i in range(1,10001)] # 1부터 10000까지 list에 담기
for i in range(1,10001):
number = sum(map(int, str(i))) # i의 각 자리수의 합
if i + number <= 10000 and i+number in arr:
a = i + number
arr.remove(a)
for i in range(len(arr)):
print(arr[i])
'코딩테스트 > BOJ' 카테고리의 다른 글
[백준/파이썬] 10773번: 제로 (0) | 2021.04.20 |
---|---|
[백준/파이썬] 2941번: 크로아티아 알파벳 (Python) (0) | 2021.04.17 |
[백준/파이썬] 1152번: 단어의 개수 (Python) (0) | 2021.04.17 |
[백준/파이썬] 1316번: 그룹 단어 체커 (Python) (0) | 2021.04.17 |