#CF757E. Bash 玩函数

Bash 玩函数

Bash 玩函数

  • 时间限制:3 秒
  • 内存限制:256 MiB

题目描述

定义 f0(n)f_0(n) 为满足 pq=npq=n 且 gcd⁡(p,q)=1\gcd(p,q)=1 的有序正整数对 (p,q)(p,q) 的数量。

递归定义

fr+1(n)=∑uv=nfr(u)+fr(v)2,f_{r+1}(n)=\sum_{uv=n}\frac{f_r(u)+f_r(v)}2,

其中 (u,v)(u,v) 枚举所有满足 uv=nuv=n 的有序正整数对,不要求互质。

给定若干个 (r,n)(r,n),求 fr(n)f_r(n) 对 109+710^9+7 取模的结果。

输入格式

第一行一个整数 qq。接下来 qq 行,每行两个整数 r,nr,n。

输出格式

对每个询问输出一行一个答案。

样例输入 1

5
0 30
1 25
3 65
2 5
4 48

样例输出 1

8
5
25
4
630

数据范围

  • 1≤q≤1061\le q\le10^6;
  • 0≤r≤1060\le r\le10^6;
  • 1≤n≤1061\le n\le10^6。
子任务编号 分值 特殊限制
1 30 q≤20,r≤8,n≤100q\le20, r\le8, n\le100
2 q≤2000,r≤2000,n≤5000q\le2000, r\le2000, n\le5000
3 40 无特殊限制

计分方式

本题按测试点独立计分,同子任务内测试点等分。