코딩테스트/프로그래머스
[프로그래머스] 약수의 개수와 덧셈
알래스카비버
2021. 10. 19. 11:59
코딩테스트 연습 - 약수의 개수와 덧셈
두 정수 left와 right가 매개변수로 주어집니다. left부터 right까지의 모든 수들 중에서, 약수의 개수가 짝수인 수는 더하고, 약수의 개수가 홀수인 수는 뺀 수를 return 하도록 solution 함수를 완성해주
programmers.co.kr
문제 설명
두 정수 left와 right가 매개변수로 주어집니다. left부터 right까지의 모든 수들 중에서, 약수의 개수가 짝수인 수는 더하고, 약수의 개수가 홀수인 수는 뺀 수를 return 하도록 solution 함수를 완성해주세요.
문제 풀이
def solution(left, right):
answer = 0
for i in range(left, right + 1):
# 약수의 개수 구하기
count = 0
for j in range(1, i + 1):
if i % j == 0:
count += 1
# 약수의 개수가 짝수면 더하고 홀수면 빼기
if count % 2 == 0:
answer += i
else:
answer -= i
return answer