문제
코딩테스트 연습 - 약수의 개수와 덧셈
두 정수 left와 right가 매개변수로 주어집니다. left부터 right까지의 모든 수들 중에서, 약수의 개수가 짝수인 수는 더하고, 약수의 개수가 홀수인 수는 뺀 수를 return 하도록 solution 함수를 완성해주
programmers.co.kr
풀이
- get_divisor는 약수의 개수의 합을 구하는 함수
- solution은 약수의 개수가 짝수면 더해주고, 약수의 개수가 홀수면 빼준다.
코드
def get_divisor(num):
cnt = 0
for i in range(1, num + 1):
if num % i == 0:
cnt += 1
return cnt
def solution(left, right):
answer = 0
for num in range(left, right + 1):
answer = answer - num if get_divisor(num) % 2 else answer + num
return answer
반응형
'Algorithm > Programmers' 카테고리의 다른 글
[Programmers] Lv1. 가운데 글자 가져오기 (0) | 2021.05.15 |
---|---|
[Programmers] Lv1. 두 개 뽑아서 더하기 (0) | 2021.05.15 |
[Programmers] Lv1. 2016년 (0) | 2021.05.15 |
[Programmers] Lv1. 실패율 (0) | 2021.05.15 |
[Programmers] Lv1. 3진법 뒤집기 (0) | 2021.05.15 |
댓글