[파이썬][프로그래머스] 자릿수 더하기
1. 문제
[level 1] 자릿수 더하기 - 12931
성능 요약
메모리: 10.3 MB, 시간: 0.02 ms
구분
코딩테스트 연습 > 연습문제
채점결과
정확성: 100.0
합계: 100.0 / 100.0
문제 설명
자연수 N이 주어지면, N의 각 자릿수의 합을 구해서 return 하는 solution 함수를 만들어 주세요.
예를들어 N = 123이면 1 + 2 + 3 = 6을 return 하면 됩니다.
제한사항
- N의 범위 : 100,000,000 이하의 자연수
입출력 예
N | answer |
---|---|
123 | 6 |
987 | 24 |
입출력 예 설명
입출력 예 #1
문제의 예시와 같습니다.
입출력 예 #2
9 + 8 + 7 = 24이므로 24를 return 하면 됩니다.
출처: 프로그래머스 코딩 테스트 연습, https://programmers.co.kr/learn/challenges
2. 해결방법 시간복잡도
- 단순 코딩 O(N)
3. 문제 해결 및 코드
-
주석을 참고하면서 이해를 돕습니다.
4. 알고리즘 및 해설
- 리스트에 문자열형태로 하나씩 받은 이후 해당 리스트내의 문자를 정수로 받아 계산한다.
5. 다른 풀이방식
- 생각해보니 컴프리핸션을 보다 쉽게 풀 수 있다.
def solution(n): answer = 0 result = [i for i in str(n)] for i in result: answer += int(i) return answer
- 더더 쉽게 푸는 방법도 있다.
def solutino(n): return sum([int(i) for i in str(n)])
- 다시 풀어보니까 문자열중 숫자로 받은 값을 바로 sum()으로 다 더해버리면 훨씬 빠르고 쉽다.