JSITCLUB
파이썬 - 프로그래머스 - 약수의 합 본문
프로그래머스 level 1
문제 설명
정수 n을 입력받아 n의 약수를 모두 더한 값을 리턴하는 함수, solution을 완성해주세요.
제한 사항
-
n은 0 이상 3000이하인 정수입니다.
입출력 예
n |
return |
12 |
28 |
5 |
6 |
입출력 예 설명
입출력 예 #1
12의 약수는 1, 2, 3, 4, 6, 12입니다. 이를 모두 더하면 28입니다.
입출력 예 #2
5의 약수는 1, 5입니다. 이를 모두 더하면 6입니다.
풀이 및 코드 |
문제 요약
약수의 합 구하기
문제 설명
이 문제역시 결과를 하나씩 구하면서 총합을 구하는 문제군요.
지난번에 자릿수의 합을 구할때 변수를 하나 만들어 조건에 맞을 때마다 변수에 누적하는 것을 알려 드렸습니다.(참조1)
이 문제 도 그 문제와 똑같습니다. 단지 이번에는 약수인것들만 더하는 것이죠.
그럼 약수 구하는 법을 알아야겠죠. 약수 구하는 법도 기초연습 문제에서 이미 연습했습니다.(참조2)
앞에서 다룬 내요이 계속 반복 되니 이전 문제들을 한번 통과했다고 만족하지 말고, 익숙해질 때까지 자꾸 풀어보시기 바랍니다.
결과코드
def solution(n):
answer = 0
for i in range(n):
if n% (i+1) == 0:
answer += (i+1)
return answer
참조
https://jsitclub.tistory.com/59
https://jsitclub.tistory.com/41
'파이썬 > 문제풀이' 카테고리의 다른 글
파이썬 - 프로그래머스 - 정수 내림차순으로 배치하기 (0) | 2020.07.28 |
---|---|
파이썬 - 프로그래머스 - 자연수 뒤집어 배열로 만들기 (0) | 2020.07.23 |
파이썬 - 프로그래머스 - 자릿수 더하기 (0) | 2020.07.22 |
파이썬 - 프로그래머스- 이상한 문자 만들기 (0) | 2020.07.21 |
파이썬 - 프로그래머스 - 나누어 떨어지는 숫자 배열 (0) | 2020.07.15 |
Comments