时间限制:C/C++/Rust/Pascal 2秒,其他语言4秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld
题目描述
xiao hua 非常喜欢质数,ta想要知道在

和

之间有多少质数,并且这些质数形成的数组有多少个子区间

和为0。子区间
AND](https://www.nowcoder.com/equation?tex=%5Bl%2Cr%5D(1%E2%89%A4l%E2%89%A4r%E2%89%A4n)AND)
和为 0,即
![a[l]](https://www.nowcoder.com/equation?tex=a%5Bl%5D)
至
![a[r]](https://www.nowcoder.com/equation?tex=a%5Br%5D)
中所有数进行

操作得到的结果为0。
与(AND)运算,运算规则:全一为一,有零为零。即只有两个操作数对应的二进制位都为1
时,结果才为1
,其他情况均为0
(也可以说,只要有0
,结果就为0
)。
输入描述:
第一行给出一个数

之后

行,每行会给出两个正整数

和

。
输出描述:
每行输出两个整数

,


是

和

区间内的所有质数的数目

是

和

区间内的所有质数形成的数组中有多少子区间and和为0
示例1
说明
第一个的质数有2,3
第二个的质数有2,3
第三个的质数有2,3,5,并且2,3,5的and和为0
备注: