只能过前四个点,5-10tle,11wa,求大佬帮助
#include<bits/stdc++.h>
using namespace std;
int prime[5200]={0,2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,
//表太长了就不放了,一共5150个质数
long long l,r,ans;
bool is[1000005];
int main()
{
cin>>l>>r;
memset(is,1,sizeof(is));
for(int i=1;prime[i]<=sqrt(r);i++)
{
for(long long j=2*prime[i];j<=r;j+=prime[i])
{
if(j>=l&&j<=r)is[j-l]=0;
}
}
for(int i=0;i<=r-l;i++)
{
ans+=is[i];
}
cout<<ans;
return 0;
}