时间复杂度:O(n sqrt(n))
顺便问一句,这题除了筛法以外还能用一些简单的方法解吗?
代码如下:
#include <bits/stdc++.h>
using namespace std;
bool IsPrime(int n)
{
int i;
for(i=2;i<=sqrt(n);i++)
if(n%i==0)
return false;
return true;
}
int main(int argc, char** argv)
{
int x,y;
cin>>x>>y;
int i;
int s=0;
if(x==1)
x=2;
if(x==2)
s++;
if(x%2==0)
x++;
for(i=x;i<=y;i+=2)
if(IsPrime(i))
s++;
cout<<s;
return 0;
}