얼렁뚱땅 스며드는 Data Science

Algorithm/Daily Coding Tests Challenge

[프로그래머스 코딩테스트] lv1. 약수의 합

Jesip14 2021. 8. 11. 17:18

문제 설명

정수 n을 입력받아 n의 약수를 모두 더한 값을 리턴하는 함수, solution을 완성해주세요.

 

나의 풀이

def solution(n):
    answer = 1
    
    for i in range(2, int(n ** 0.5) + 1):
        if n % i == 0:
            answer += i
            if i != (n // i):
                answer += (n // i)
                
    return n if n <=1 else answer + n

 

문제 출처 : https://programmers.co.kr/learn/courses/30/lessons/12928

 

코딩테스트 연습 - 약수의 합

정수 n을 입력받아 n의 약수를 모두 더한 값을 리턴하는 함수, solution을 완성해주세요. 제한 사항 n은 0 이상 3000이하인 정수입니다. 입출력 예 n return 12 28 5 6 입출력 예 설명 입출력 예 #1 12의 약수

programmers.co.kr