mod = 1000000007 eps = 10**-9 def main(): import sys from math import sqrt input = sys.stdin.readline N = 10 ** 6 L, R = map(int, input().split()) A = list(range(L, R+1)) for d in range(2, N+1): xl = (L - 1) // d + 1 xr = R // d for x in range(xl, xr + 1): m = A[d * x - L] if m != -1: if m % (d**2) == 0: A[d*x - L] = -1 else: if m % d == 0: A[d * x - L] //= d ans = 0 for m_ in range(L, R+1): if A[m_ - L] == -1: continue ans += 1 m = A[m_ - L] if m != 1: mm = int(sqrt(m)) for j in range(-2, 3): if mm + j > 0: if (mm + j) ** 2 == m: if mm + j > N: ans -= 1 print(ans) """ # guchoku cnt = 0 ok = [0] * (R - L + 1) for i in range(L, R+1): flg = 1 for d in range(2, 101): if i % (d**2) == 0: flg = 0 break cnt += flg if flg: ok[i - L] = 1 print(cnt) """ if __name__ == '__main__': main()