728x90
#1016 제곱 ㄴㄴ수
import sys
import math
A,B = map(int,input().split())
C = int(math.sqrt(B))
nest = [1] * (B-A+1)
for i in range (2,C+1):
a = A // (i ** 2)
a *= (i ** 2)
if a * (i ** 2) < A and B < (a + 1) * (i ** 2):
continue
else:
for j in range (a,B + 1,(i ** 2)):
if j - A >= 0:
nest[j-A] = 0
print(nest.count(1))
이것도 좀 나중에 설명을 좀 써둬야겠네요 ㅋㅋ ㅠ
'코딩' 카테고리의 다른 글
[BOJ] 백준 2981 검문 Python (0) | 2023.10.27 |
---|---|
[BOJ] 백준 1684 같은 나머지 Python (0) | 2023.10.27 |
[BOJ] 백준 1463 1로 만들기 Python (0) | 2023.10.27 |
[BOJ] 백준 1790 수 이어 쓰기2 Python (0) | 2023.10.27 |
[BOJ] 백준 2877 4와 7 Python (0) | 2023.10.27 |