Un număr se numește triprim dacă este produsul a trei numere prime distincte. Exemple de numere triprime: 30 = 2 × 3 × 5, 42 = 2 × 3 × 7, 231 = 3 × 7 × 11. Exemple de numere care nu sunt triprime: 77 = 7 × 11 (prea puține numere prime în produs), 3003 = 3 × 7 × 11 × 13 (prea multe numere prime în produs), 18 = 2 × 3 × 3 (numerele prime nu sunt distincte), 10241 = 7 × 7 × 11 × 19 (prea multe numere prime în produs).
Cerința
Date fiind numerele A și B, să se afișeze numărul de numere triprime din intervalul [A, B] (inclusiv A și B).
Date de intrare
Fișierul de intrare triprime.in conține pe prima linie două numere naturale A și B, despărțite printr-un
singur spațiu.
Date de ieșire
Fișierul de ieșire triprime.out va conține numărul de numere triprime din intervalul [A, B].
Restricții și precizări
1 ≤ A ≤ B ≤ 390.000.000- Pentru 18 puncte,
1 ≤ B ≤ 1.500.000 - Pentru 6 puncte,
1.500.000 < B ≤ 2.500.000 - Pentru 20 puncte,
2.500.000 < B ≤ 4.500.000 - Pentru 31 puncte,
4.500.000 < B ≤ 35.000.000 - Pentru 25 puncte, nu există alte restricții
Exemplul 1:
triprime.in
1 50
triprime.out
2
Explicație
Sunt două numere triprime de la 1 la 50: 30 = 2 × 3 × 5 și 42 = 2 × 3 × 7.
Exemplul 2:
triprime.in
50 105
triprime.out
5
Explicație
Sunt cinci numere triprime de la 50 la 105: 66 = 2 × 3 × 11, 70 = 2 × 5 × 7, 78 = 2 × 3 × 13, 102 = 2 × 3 × 17 și 105 = 3 × 5 × 7.
Exemplul 3:
triprime.in
1000 3000
triprime.out
348
Explicație
Sunt 348 de numere triprime în intervalul [1000, 3000].