Notice
Recent Posts
Recent Comments
«   2024/12   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
Tags
more
Archives
Today
Total
관리 메뉴

No Limitation

[Back Tracking, 완전탐색] 약수의 갯수와 덧셈 - 프로그래머스 본문

프로그래밍

[Back Tracking, 완전탐색] 약수의 갯수와 덧셈 - 프로그래머스

yesungcho 2022. 2. 12. 12:58

https://programmers.co.kr/learn/courses/30/lessons/77884?language=python3 

 

코딩테스트 연습 - 약수의 개수와 덧셈

두 정수 left와 right가 매개변수로 주어집니다. left부터 right까지의 모든 수들 중에서, 약수의 개수가 짝수인 수는 더하고, 약수의 개수가 홀수인 수는 뺀 수를 return 하도록 solution 함수를 완성해주

programmers.co.kr

 

약수를 구하는 문제는

(어떤 수)/(나누는 수) 이러한 수식의 결과 나머지가 0이 되면

나누는 수는 어떤 수의 약수가 됩니다

 

이러한 매커니즘을 활용하여 문제에 접목시켜 볼 수 있습니다.

 

이 경우는 완전탐색을 수행하여 구현한 코드입니다.

def checks(num) :
    ls = [j for j in range(1,num+1) if num%j == 0]
    if len(ls)%2 == 0 : 
        return True
    return False

def solution(left, right):
    answer = 0
    for i in range(left, right+1) : 
        check = checks(i)
        if check : 
            answer += i
        else : 
            answer -= i
    return answer