#include #define MAX_LR (1000000) using namespace std; typedef long long ll; int main() { ll l, r; bool is_prime_memo[MAX_LR + MAX_LR + 1 + 1]; int ans = 0; scanf("%lld %lld", &l, &r); for (int i = 1; i <= MAX_LR + MAX_LR + 1; i++) { is_prime_memo[i] = true; } is_prime_memo[1] = false; for (int i = 2; i <= MAX_LR + MAX_LR + 1; i++) { for (int j = i + i; j <= MAX_LR + MAX_LR + 1; j+=i) { is_prime_memo[j] = false; } } for (ll i = l; i <= r; i++) { if (is_prime_memo[i]) { ans++; } if (i+1 <= r && is_prime_memo[i+i+1]) { ans++; } } printf("%d\n", ans); return 0; }