728x90
def solution(n):
return sum([int(s) for s in str(n)])
<내 풀이 분석>
1. 숫자를 문자열로 바꾼다
2. 문자열의 각 문자를 int함수를 이용해서 숫자로 바꾼다.
3. 바꾼 애들을 저장한 리스트를 sum함수를 이용해서 다 더해준다.
+) map함수를 이용한 풀이
def solution(n):
return sum(map(int, str(n)))
위와 비슷한 풀이인데, 그냥 map을 사용한거다.
+) 재귀함수를 이용한 풀이
def solution(n):
if n<10:
return n
else:
return n%10+solution(n//10)
좋아요를 가장 많이 받은 풀이이다. 재귀함수 연습하기 좋은 코드!
무작정 함수를 사용하고 코드를 줄이는 것보다 이런 코드를 만들어보는 것도 좋은 연습이 될 것 같다.
728x90
'알고리즘 > programmers[1]' 카테고리의 다른 글
[프로그래머스] 자연수 뒤집어 배열로 만들기 (0) | 2022.01.26 |
---|---|
[프로그래머스] 최대공약수와 최소공배수: python3 (0) | 2022.01.26 |
[프로그래머스] 시저 암호: python3 (0) | 2022.01.25 |
[프로그래머스] 제일 작은 수 제거하기 (0) | 2022.01.25 |
[프로그래머스] 소수 찾기: python3 (0) | 2022.01.25 |