[프로그래머스 Lv1] 약수의 개수와 덧셈 / 파이썬 Python

Gayoung Lee·2022년 5월 17일
0

Algorithm

목록 보기
26/39

문제

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

내 풀이

def solution(left, right):
    def divCntFun(x):
        result=''
        cnt=0
        for i in range(1,x+1):
            if x%i==0:
                cnt+=1
        if cnt%2==0:
            result='even'
        else:
            result='odd'
        return result
    
    answer = 0
    for x in range(left,right+1):
        if divCntFun(x)=='even':
            answer+=x
        else:
            answer-=x
            
    return answer

문법 정리

  • 약수 다른 방식으로 다시 해보자
profile
삽질하며 성장하는 gayoungee

0개의 댓글