nbxwj
nbxwj
关注数: 0
粉丝数: 12
发帖数: 89
关注贴吧数: 6
求助:筛法求素数个数 运行错误 求AB区间的素数个数 输入 一行,两个整数a,b,1<=a<b<=3000000 输出 a~b之间所有素数个数 样例输入 2 10 样例输出 4 我的解法如下,在Online Judge中总是运行错误 var a,b:longint; f:array[1..3000000] of boolean; function pr(x:longint):longint; var i,j,t:longint; begin fillchar(f,sizeof(f),true); for i:=2 to trunc(sqrt(x)) do begin j:=i; while j+i<=x do begin j:=j+i;f[j]:=false;end; end; t:=0; for i:=2 to x do if f[i] then inc(t); pr:=t; end; begin readln(a,b);if a<2 then a:=2; writeln(pr(b)-pr(a-1)); end.
1
下一页