자릿수 더하기 - Python

2023. 10. 5. 23:26공부/📝 프로그래머스

def solution(n):
    return sum([int(str(n)[i]) for i in range(len(str(n)))])


# Test Cases
print(solution(123))
print(solution(987))

  연습문제에서는 위와 같이 풀었습니다.

 

 


def solution(n):
    answer = 0
    for item in str(n):
        answer += int(item)
    return answer


# Test Cases
print(solution(1234))
print(solution(930211))

  코딩테스트 입문에서는 위와 같이 풀었습니다.


# 문제가 개편되었습니다. 이로 인해 함수 구성이나 테스트케이스가 변경되어, 과거의 코드는 동작하지 않을 수 있습니다.
# 새로운 함수 구성을 적용하려면 [코드 초기화] 버튼을 누르세요. 단, [코드 초기화] 버튼을 누르면 작성 중인 코드는 사라집니다.
def sum_digit(number):
    '''number의 각 자릿수를 더해서 return하세요'''
    if number < 10:
        return number

    return number%10 + sum_digit(number//10)



# 아래는 테스트로 출력해 보기 위한 코드입니다.
print("결과 : {}".format(sum_digit(123)));

  그런데 재귀함수로 멋있게 푼 다른 사람의 풀이를 발견했습니다.

 


 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr