#796. [CZOJ 一周一测 R8 B] 【模板】数位 dp
[CZOJ 一周一测 R8 B] 【模板】数位 dp
题目背景
注意:这 不 是 数位&*!@#(dp)!#模?>.\版*题!@$=@。
题目描述
对于一个正整数 ,令 在二进制下从最低位到最高位的数位依次为 ,例如,若 ,则 ,。
让 的 权值 表示为 $\sum\limits_{i=0}^k [i \bmod 2 = 1]n_i - \sum\limits_{i=0}^k [i \bmod 2 = 0]n_i$。对于一个正整数 ,它被称作是 好的 当且仅当 是 的倍数。
给出 ,请你求出满足 的 好的 的个数。
输入格式
本题单个测试点内有多组数据。
第一行一个整数 ,表示数据组数。
接下来 行,每行两个整数 描述一组数据。
输出格式
共 行,每行一个整数表示答案。
样例
1
4 7
1
样例解释
在 之间的数中只有 满足 是 的倍数。
数据规模与约定
本题采用捆绑测试。
- Subtask 0(13 pts):。
- Subtask 1(20 pts):。
- Subtask 2(20 pts):。
- Subtask 3(47 pts):无特殊限制。
对于所有数据,,。