这里有一行我没看懂,求解释。
求1亿内素数: int main(){
bitset<100000000>* p=new bitset<100000000>;
p->set();
for(int i=2;i<=10000;++i)
if(p->test(i))
for(int j=i*i;j<p->size();j+=i) \\这行怎么理解??
p->reset(j);
int num=0;
for(int i=2;i<100000000;++i)
if(p->test(i))
num++;
cout<<num<<endl;
}
整个程序的意思(不知道自己理解的对不对。。。)是设100000000个空位,然后全设成1,然后扫描1-100000000的整数,如果不是素数,就把对应的位变0,最后数1的个数
for(int j=i*i;j<p->size();j+=i) \\这行怎么理解?? 没看懂。。。