#include using namespace std; typedef long long ll; typedef pair P; #define DUMP(x) cout << #x << " = " << (x) << endl; #define FOR(i, m, n) for (ll i = m; i < n; i++) #define IFOR(i, m, n) for (ll i = n - 1; i >= m; i--) #define REP(i, n) FOR(i, 0, n) #define IREP(i, n) IFOR(i, 0, n) #define ALL(v) (v).begin(), (v).end() #define SZ(x) ll(x.size()) vector Eratosthenes(ll n) { vector res(n + 1, 1); res[0] = res[1] = 0; for (ll i = 2; i * i <= n; i++) if (res[i]) { for (ll j = 2; i * j <= n; j++) res[i * j] = 0; } return res; } int main() { ll l, r; cin >> l >> r; auto v = Eratosthenes(2 * r); ll ans = 0; FOR(i, l, r + 1) { if (v[i]) { ans++; } } FOR(i, 2 * l + 1, 2 * r) { if (v[i]) { ans++; } } cout << ans << endl; }