문제
정수 n을 입력받아 n의 약수를 모두 더한 값을 리턴하는 함수, solution을 완성해주세요.
제한사항
- n은 0 이상 3000이하인 정수입니다.
입출력의 예
n | return |
12 | 28 |
5 | 6 |
🍀 Solution
def solution(n):
answer = 0
for x in range(1,n+1):
if n%x == 0:
answer += x
else:
answer = answer
return answer
🐧 풀이
- 1부터 n까지 모든 수를 x로 받는 반복문을 이용해
- n의 약수는 n을 x로 나눈 나머지가 0인 경우이다. 따라서`if n%x == 0:` 일 때마다 answer에 x를 더한다.
- 그 외의 경우 answer는 answer이다. ← 이 부분은 생략 가능
🖨️ 결과
'⌨️ Code Taka > Python' 카테고리의 다른 글
[프로그래머스] x만큼 간격이 있는 n개의 숫자 (0) | 2024.05.12 |
---|---|
[프로그래머스] 나머지가 1이 되는 수 찾기 (0) | 2024.05.07 |
[프로그래머스] 자릿수 더하기 (0) | 2024.05.05 |
[프로그래머스] 평균 구하기 (0) | 2024.05.05 |
[프로그래머스] 짝수와 홀수 (0) | 2024.05.05 |