- 자기 자신을 제외한 약수는 값//2 이하 만 존재한다
- 약수의 개수가 홀수 개인 수는 제곱수 뿐이다
- 제곱수: int(i**0.5)== i**0.5 인 i 값
- 제곱근 함수: sqrt()
import math
def solution(left, right):
answer=0
for i in range(left,right+1):
sqrt=math.sqrt(i)
if int(sqrt)== sqrt: # int(i**0.5)==i**0.5
answer-=i
else:
answer+=i
return answer
'코딩테스트 > Python 개념' 카테고리의 다른 글
| [Python] 튜플(tuple) (0) | 2023.03.05 |
|---|---|
| [Python] 입력 주의사항 (0) | 2023.03.03 |
| [Python] 순열, 조합 직접 구현 (0) | 2023.02.24 |
| [Python] 정수 최댓값, 최솟값 초기화: -1e9, 1e9 (0) | 2023.02.15 |
| [Python] 한 줄에 여러값 입력받기 map(int,input().split()) (0) | 2023.02.08 |