#include<bits/stdc++.h>
using namespace std;
bool Prime[2143483647];
inline int qread(){
register int x = 0,f = 1;
register char ch = getchar();
while(ch<'0'||ch>'9'){
if(ch == '-'){
f = -1;
}
ch = getchar();
}
while(ch>='0'&&ch<='9'){
x = x * 10 + ch - '0';
ch = getchar();
}
return x*f;
}
inline void qwrite(int x){
if(x<0){
putchar('-');
x = -x;
}
int n=0;
char ch[100];
while(x||!n){
ch[++n] = x % 10 + '0';
x /= 10;
}
for(int i=n;i>=1;i--){
putchar(ch[i]);
}
return;
}
void isPrime(int n){
for(int i=1;i<=n;i++){
Prime[i] = true;
}
Prime[1] = false;
for(register int i=2;i*i<=n;i++){
if(Prime[i]){
for(register int j=i*i;j<=n;j+=i){
Prime[j] = false;
}
}
}
}
int main(){
int l = qread(),r = qread(),ans = 0;
isPrime(r);
for(int i=l;i<=r;i++){
if(Prime[i]){
ans++;
}
}
qwrite(ans);
return 0;
}
评测记录