NiroBC 姐姐脑洞了两个数字 x 和 y ,它们满足 x \lor y = T ,且 L_x \le x \le R_x, L_y \le y \le R_y , NiroBC 姐姐想知道 x \land y 有多少种不同的取值,若有多组 (x, y) 的 x \land y 值相同,则只算一次。
(其中 \lor 表示按位取或,C/C++
中写作|
,Pascal
中写作or
)
(其中 \land 表示按位取与,C/C++
中写作&
,Pascal
中写作and
)
一行,五个非负整数 T, L_x, R_x, L_y, R_y 。
一行,一个整数,答案。
11 3 10 8 13
7
样例解释
符合条件的 (x, y) 有:(二进制表示)
x \land y 不重复的有 7 种。
数据范围
对于所有数据,0 \le T, L_x, R_x, L_y, R_y < 2^{60} , L_x \le R_x,L_y \le R_y 。
本题采用打包测试。
各个 Subtask 的特殊限制如下,不填代表该项无特殊限制。
LOJ