#CT0000061. Đếm số chính phương trong đoạn (Count Perfect Squares in an Interval)

Đếm số chính phương trong đoạn (Count Perfect Squares in an Interval)

Đếm số chính phương trong đoạn (Count Perfect Squares in an Interval)

Phiên bản: Phước Hưng OJ Extended

Đề bài

Một số nguyên dương được gọi là số chính phương nếu nó là bình phương của một số nguyên dương. Ví dụ, 1,4,9,161,4,9,16 là các số chính phương.

Cho hai số nguyên dương LL và RR. Hãy đếm số lượng số chính phương thuộc đoạn [L,R][L,R]. Nói cách khác, cần đếm số nguyên xx thỏa mãn L≤x≤RL \le x \le R và tồn tại số nguyên dương kk sao cho x=k2x=k^2.

Input

Một dòng chứa hai số nguyên dương LL và RR.

Output

In ra một số nguyên duy nhất là số lượng số chính phương thuộc đoạn [L,R][L,R].

Subtask

  • Subtask 1 (20%): 1≤L≤R≤1061 \le L \le R \le 10^6.
  • Subtask 2 (30%): 1≤L≤R≤10121 \le L \le R \le 10^{12}.
  • Subtask 3 (50%): 1≤L≤R≤10181 \le L \le R \le 10^{18}.

Ví dụ

Ví dụ 1

Input

1 10

Output

3

Giải thích

Các số chính phương trong đoạn [1,10][1,10] là 1=121=1^2, 4=224=2^2 và 9=329=3^2. Vì vậy kết quả là 33.

Ví dụ 2

Input

25 25

Output

1

Giải thích

Đoạn chỉ chứa số 2525. Vì 25=5225=5^2, có đúng một số chính phương trong đoạn.

Ví dụ 3

Input

999999999999999999 1000000000000000000

Output

1

Giải thích

Ta có (109−1)2=999999998000000001<999999999999999999(10^9-1)^2=999999998000000001<999999999999999999, còn (109)2=1018(10^9)^2=10^{18}. Vì vậy chỉ có 101810^{18} là số chính phương thuộc đoạn đã cho.