🚩문제 설명
자연수 N이 주어지면, N의 각 자릿수의 합을 구해서 return 하는 solution 함수를 만들어 주세요.
예를들어 N = 123이면 1 + 2 + 3 = 6을 return하면 됩니다.
❗제한사항
💡아이디어
1. 숫자를 문자열 자료형으로 변경
2. 문자의 각 자릿수 길이만큼 for문을 돌리기 위해 숫자의 길이를 구함
3. 자릿수의 길이만큼 for문을 돌리면서 각 자리의 수를 sum에 더하고 더하고 나머지 수를 n에 갱신
4. sum의 최종값을 return
⌨️ 나의 해답
def solution(n) :
a = str(n)
b = int(len(a))
sum = 0
for i in range(1, b+1) :
c = n // 10 ** (b-i)
sum += c
n = n % 10 ** (b-i)
return sum
모든 테스트 케이스를 통과해서 한번에 테스트 100점을 받았지만 코드가 마음에 안든다
중복되는 코드도 있고 갈끔하고 간결한 코드는 아니라고 생각하기 때문이다