质数又称素数,指在大于1的自然数中,只能被1和本身整除的数,也可定义为只有1和本身两个因数的数。而半质数的定义是这样的:若对于一个正整数N,恰好能够分解成两个质数的乘积,它就被称为半质数。比如,4=2*2,15=3*5都是半质数,12不是半质数,它的质因子分解式为12=2*2*3,分解出的质数共有3个,其中有2个质数2,1个质数3。
(jzxx. 2120 )
输入
输入数据仅有一行包含两个用空格隔开的正整数 S 和 E,其中 2≤S≤E<5000000。
输出
输出数据仅有一行包含一个整数表示在 S 到 E 之间共有多少个半质数。
样例输入
4 26
样例输出
10
提示
样例解释
在 4 到 26 之间共有 10 个半质数,分别是 4, 6, 9, 10, 14, 15, 21, 22, 25, 26。
数据范围
30%的数据满足:2≤S≤E<500
60%的数据满足:2≤S≤E<50000
100%的数据满足:2≤S≤E<5000000
来源/分类
常州市2014“信息与未来”夏令营选拔赛
题目地址http://oj.jzxx.net/problem.php?id=2120
【思路】
本题数据量大,而且限时1秒、限内存32M,32M空间大约能开整型数组800万左右(32×1024×1024/4=838万),直接暴力枚举、判断不可取&#