#X2D. 「Cfz Round 4」Gcd with Xor
「Cfz Round 4」Gcd with Xor
题目背景
ねえ もしも全て投げ捨てられたら
呐 若然能将一切舍弃的话
笑って生きることが楽になるの
笑着活下去这样的事就会变的轻松吗
题目描述
给定两个正整数 。
定义 $\displaystyle f(x)=\sum_{i=1}^x \gcd(i,i\oplus x)^k$。计算 。其中 表示 和 的最大公因数, 表示按位异或,即 C++ 中的 ^
。
由于答案可能很大,所以你只需要输出答案对 取模的结果。
输入格式
本题有多组测试数据。
输入的第一行包含一个整数 ,表示测试数据组数。
接下来依次输入每组测试数据。对于每组测试数据,输入一行两个正整数 。
输出格式
对于每组测试数据,输出一行一个整数,表示答案对 取模的结果。
样例
5
3 2
10 1
261 261
2333 2333
124218 998244353
17
134
28873779
470507314
428587718
样例解释
对于第 组测试数据:
。
。
。
。
数据范围
对于所有测试数据,,,,。
本题采用捆绑测试。
设 表示单个测试点中 的和。
- Subtask 1(10 points):。
- Subtask 2(12 points):。
- Subtask 3(15 points):。
- Subtask 4(45 points):。
- Subtask 5(18 points):无特殊限制。