프로그래머스 LV1 - 약수의 개수와 덧셈
내 풀이
def solution(left, right):
result = 0
for i in range(left,right+1):
yak = []
for k in range(1, i // 2 + 1):
if i % k == 0:
yak.append(k)
yak_num = len(yak) + 1
if yak_num % 2 == 0:
result += i
else:
result -= i
return result
다른 풀이
def solution(left, right):
answer = 0
for i in range(left,right+1):
if int(i**0.5)==i**0.5:
answer -= i
else:
answer += i
return answer
풀이 해석
제곱수는 약수의 개수가 홀수인 점을 이용한 풀이
댓글남기기