NIRVANA
[DAY-8] 프로그래머스 자릿수 더하기 본문
문제
자연수 N이 주어지면, N의 각 자릿수의 합을 구해서 return 하는 solution 함수를 만들어 주세요.
예를들어 N = 123이면 1 + 2 + 3 = 6을 return 하면 됩니다.
제한사항
- N의 범위 : 100,000,000 이하의 자연수
문제 풀이 접근법1
1) 자연수 N을 문자열로 변경한 뒤, for문을 문자열의 각 원소를 가지고 온다.
2) 문자열의 원소를 다시 자연수로 변경하고, 그 값을 answer에 더한다.
3) answer를 반환한다.
def solution(n):
answer = 0
for i in str(n):
answer += int(i)
return answer
다른 분들 문제 풀이
def sum_digit(number):
'''number의 각 자릿수를 더해서 return하세요'''
if number < 10:
return number
return number%10 + sum_digit(number//10)
# 아래는 테스트로 출력해 보기 위한 코드입니다.
print("결과 : {}".format(sum_digit(123)));
재귀를 사용해서 푸는 방법은 생각 못했는데 좋은 것 같다!
'Coding test(Python3) > 스터디' 카테고리의 다른 글
[DAY-10] 프로그래머스 정수 내림차순으로 배치하기 (0) | 2024.05.27 |
---|---|
[DAY-9] 프로그래머스 자연수 뒤집어 배열로 만들기 (0) | 2024.05.25 |
[DAY-7] 4949번 균형잡힌 세상 (1) | 2024.05.23 |
[DAY-6] 백준 9012번 괄호 (0) | 2024.05.22 |
[DAY-5] 백준 10773번 제로 (0) | 2024.05.21 |