프로그래머스 Lv1 자릿수 더하기
문제
자연수 N이 주어지면, N의 각 자릿수의 합을 구해서 return 하는 solution 함수를 만들어 주세요.
예를들어 N = 123이면 1 + 2 + 3 = 6을 return 하면 됩니다.
- 제한사항
N의 범위 : 100,000,000 이하의 자연수
풀이
def solution(n):
return sum(list(map(int, list(str(n)))))
- 먼저 n이 자연수이므로 문자로 만들기 위해 str() 사용
- list를 통해 문자열을 각각 리스트에 넣어준다
(다시 보니까 굳이 list 하지 않아도 된다. 이미 문자열은 그 자체가 list?라고 할 수 있으므로)
- list(map(int, ... 를 통해 문자였던 리스트를 숫자로 만들어주고 다시 리스트화한다.
(여기서도 map 앞에 list를 붙여주지 않고 sum(map(int, .. 로 만들어 주어도 된다.)
- sum()을 이용하여 리스트 내 수를 모두 더해준다.