라떼는말이야

[프로그래머스 lv1] 자릿수 더하기 (파이썬) 본문

알고리즘/코딩 테스트

[프로그래머스 lv1] 자릿수 더하기 (파이썬)

MangBaam 2021. 6. 25. 17:00
반응형

문제 설명

자연수 N이 주어지면, N의 각 자릿수의 합을 구해서 return 하는 solution 함수를 만들어 주세요.
예를들어 N = 123이면 1 + 2 + 3 = 6을 return 하면 됩니다.

제한사항

  • N의 범위 : 100,000,000 이하의 자연수

입출력 예

입출력 예

 

입출력 예 설명

입출력 예 #1
문제의 예시와 같습니다.

입출력 예 #2
9 + 8 + 7 = 24이므로 24를 return 하면 됩니다.


나의 풀이

def solution(n):
    return sum(map(int, list(str(n))))

n을 문자열로 바꿔서 list() 함수에 담으면 각 자리수를 분리해서 리스트로 담을 수 있다.

그리고 map() 함수를 사용하면 입력되는 리스트들에 모두 일정한 함수를 적용시킬 수 있는데, 무슨 말이냐면 위 코드에서 map(int, list)를 하면 list에 있는 모든 요소를 int() 함수에 넣은 결과값과 같다는 것이다.

이 결과는 리스트로 나오는데 이걸 sum() 함수에 넣으면 총합을 구할 수 있다.

테스트 결과

 

 
반응형
Comments