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

FFTL:)·2021년 6월 8일
2

약수의 개수와 덧셈 ( https://programmers.co.kr/learn/courses/30/lessons/77884 )

약수의 개수를 구해낼 수 있으면 해결할 수 있는 간단한 문제입니다.

문제 해결

  • left 부터 right 까지 1씩 증가하는 for문을 만듭니다.
  • left수 부터 약수의 개수를 구해냅니다.
  • 설명대로 개수가 짝수일 경우 answer에 더해주고, 홀수일 경우 answer에 빼줍니다.
def solution(left, right):
    answer = 0
    for i in range(left, right+1):	#left 부터 right까지 1씩 증가하는 for문
        now_count = 0;			#약수의 개수를 담기위한 변수
        for j in range(1, i+1):		#1부터 i까지 증가하며 약수를 찾아냅니다.
            if i % j == 0:		#나누어 떨어지는 수는 약수!
                now_count +=1;		#약수라면 개수를 증가시켜줍니다.
        
        if now_count % 2 == 0:		#이제 개수가 홀수인지 짝수인지 판별하여
            answer += i			#짝수라면 더해주고
        else:
            answer -= i			#홀수라면 빼줍니다.
            
    return answer			#끝!

=> 약수가 무엇인지 알고 있고 for문만 활용하면 간단하게 풀 수 있는 문제였습니다.

profile
생각하는 개발자가 되자!

0개의 댓글