#P13732. 【MGVOI R1-D】图上的数(graph)

    ID: 15193 远端评测题 1000ms 512MiB 尝试: 0 已通过: 0 难度: 5 上传者: 标签>数学数论Special JudgeO2优化素数判断,质数,筛法排列组合

【MGVOI R1-D】图上的数(graph)

题目描述

你有一张有向图 GG,这张图中有着无穷多个节点,这些节点的编号为 1,2,3,...1,2,3,...

对于任意两个正整数 i,ji,j 而言,当且仅当 iijj 的倍数,并且 iji \neq j 时,在图 GG 中存在一条由 ii 号节点指向 jj 号节点的边(其长度为 11)。

  • 下图为 GG 中前 66 号节点的状态示例:(点击查看)

::::info[示例] ::::


对任意的正整数 xx,给出如下定义:

  1. xx 号节点到 11 号节点的 最长路径的长度E(x)E(x)

  2. xx 号节点到 11 号节点的 最长路径的条数T(x)T(x)

  3. 设在所有满足 E(y)=E(x)E(y)=E(x) 的正整数 yy 中,T(y)T(y) 的最大值为 max{T(y)}\max \{ T(y) \},则定义 A(x)A(x) 的值为 max{T(y)}T(x)\dfrac{\max \{ T(y) \} }{T(x)}

  4. 特殊地,规定 E(1)=0E(1)=0T(1)=A(1)=1T(1)=A(1)=1

可以证明,A(x)A(x) 一定是正整数。以下是几个便于你理解上述定义的例子:(点击查看)

::::info[示例]

  1. E(6)=2E(6)=2T(6)=2T(6)=2,因为从 66 号节点到 11 号节点最多可以经过 22 条边,其对应的 22 条最长路径分别为 6316\rightarrow 3\rightarrow 16216\rightarrow 2\rightarrow 1。同理可知,E(4)=2E(4)=2T(4)=1T(4)=1

  2. A(6)=1A(6)=1,因为在所有满足 E(y)=2E(y)=2 的正整数 yy 中,可以证明,T(y)T(y) 的最大值即为 22,与 T(6)T(6) 恰好相等。

  3. A(4)=2A(4)=2,因为在所有满足 E(y)=2E(y)=2 的正整数 yy 中,T(y)T(y) 的最大值 22 恰好为 T(4)T(4)22 倍。

::::


给定一个正整数 N=abN=a^b,在此基础上,你可以按如下规则构造出一个 NNNN 列的方格图 SNS_N

对于正整数 i,ji,j1i,jN1\le i,j\le N)而言:

  • NNii 的倍数,并且 iijj 的倍数时,第 ii 行第 jj 列的方格上写有数字 i×j×A(j)i\times j\times A(j)

  • 否则,第 ii 行第 jj 列的方格上写有数字 11

不难验证 A(1)=A(2)=A(3)=A(6)=1A(1)=A(2)=A(3)=A(6)=1。以下是方格图 S6S_6 的示例:(点击查看)

::::info[示例] |11|11|11|11|11|11| |:-:|:-:|:-:|:-:|:-:|:-:| |22|44|11|11|11|11| |33|11|99|11|11|11| |11|11|11|11|11|11| |11|11|11|11|11|11| |66|1212|1818|11|11|3636| ::::


你需要回答以下两个问题:

  • 第一问:A(N)A(N) 的值是多少?

  • 第二问:在方格图 SNS_N 中,所有方格上数字的总和是多少?

由于答案可能很大,请将所有答案对 109+710^9+7 取模。

输入格式

每个测试点包含多组测试数据,各组测试数据之间相互独立。

第一行包含一个正整数 TT,表示测试数据的组数。

对于每组测试数据:仅输入一行,包含两个正整数 a,ba,b,表示给定的正整数 N=abN=a^b

输出格式

对于每组测试数据:仅需在单独一行输出两个非负整数,用空格隔开,分别表示第一问和第二问的答案(均需对 109+710^9+7 取模)。

::::warning[注意事项]{open} 即使你不回答其中一问,也需要在对应位置上输出一个小于 109+710^9+7 的非负整数,以满足输出格式。

本题通过 Special Judge 实现两问分别计分,关于具体的分值分配,请参阅【数据范围】板块。 ::::

1
6 1
1 118
5
1 1
2 3
6 2
7 1
15 2
1 1
6 577
4 12021
1 103
4 352530

提示

【样例 #1】

::::info[样例 #1 解释]

该样例下,N=61=6N=6^1=6

在【题目描述】中已经解释过 A(6)=1A(6)=1即第一问的答案),并画出了方格图 S6S_6,其中所有方格上数字的总和为 118118即第二问的答案)。

::::

【样例 #2】

::::info[样例 #2 解释(第二组测试数据)]

对于第二组测试数据,N=23=8N=2^3=8

:::success[第一问的答案说明]

首先可以得到 E(8)=3E(8)=3T(8)=1T(8)=1,对应的唯一一条最长路为 84218\rightarrow 4\rightarrow 2\rightarrow 1

其次,在所有满足 E(y)=3E(y)=3 的正整数 yy 中,有 max{T(y)}=6\max \{ T(y) \} =6(详细说明见下),故 A(8)=6T(8)=6A(8)=\dfrac{6}{T(8)}=6即第一问的答案)。

y=30y=30 时,有 E(y)=3E(y)=3T(y)=6T(y)=6,其对应的 66 条最长路分别为:

  • 30155130\rightarrow 15\rightarrow 5\rightarrow 1

  • 30153130\rightarrow 15\rightarrow 3\rightarrow 1

  • 30105130\rightarrow 10\rightarrow 5\rightarrow 1

  • 30102130\rightarrow 10\rightarrow 2\rightarrow 1

  • 3063130\rightarrow 6\rightarrow 3\rightarrow 1

  • 3062130\rightarrow 6\rightarrow 2\rightarrow 1

可以证明,T(30)=6T(30)=6 就是在所有满足 E(y)=3E(y)=3 的正整数 yy 中,T(y)T(y) 的最大值。

:::

:::success[第二问的答案说明]

列出 A(x)A(x) 的值表:

xx 11 22 44 88
A(x)A(x) 11 22 66

接下来,画出方格图 S8S_8

11
22 44 11 11 11 11
11
44 88 3232
11 11
88 1616 6464 384384

所有方格上数字的总和为 577577即第二问的答案)。 :::

::::


::::info[样例 #2 解释(第三组测试数据)]

对于第三组测试数据,N=62=36N=6^2=36

分析可知 E(36)=4E(36)=4T(36)=6T(36)=6。而在所有满足 E(y)=4E(y)=4 的正整数中,取 y=210y=210 即可最大化 T(y)T(y),有 max{T(y)}=T(210)=24\max \{ T(y) \} =T(210)=24,据此可得到 A(36)=T(210)T(36)=4A(36)=\dfrac{T(210)}{T(36)}=4即第一问的答案)。

由于方格图 S36S_{36} 的篇幅过大,下面仅画出其最后一行(也就是第 3636 行)的状态,并标出列编号:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
3636 7272 108108 288288 11 216216 11 648648 11 864864 11 12961296 11 51845184

在画出完整的方格图后可以验证,S36S_{36} 中所有方格上数字的总和为 1202112021即第二问的答案)。

:::warning[温馨提示] 请不要忘记将所有答案对 109+710^9+7 取模! :::

::::

【样例 #3】

见附件中的 graph/graph3.ingraph/graph3.ans

这个样例满足测试点 242 \sim 4 的限制。

【样例 #4】

见附件中的 graph/graph4.ingraph/graph4.ans

这个样例满足测试点 565 \sim 6 的限制。

【样例 #5】

见附件中的 graph/graph5.ingraph/graph5.ans

这个样例满足测试点 7107 \sim 10 的限制。


【数据范围】

对于所有测试点,保证 1T1001\le T\le 1001a2×1091\le a \le 2\times 10^91b2×1031\le b \le 2\times 10^3

::cute-table{tuack}

测试点编号 TT \le aa \le bb \le 特殊性质
11 22 1010 11 AB
242\sim 4 2020 2×1032\times 10^3 1010 ^
565\sim 6 100100 2×1092\times 10^9 2×1032\times 10^3 C
7107\sim 10 ^

特殊性质 A:保证 ab2×103a^b\le 2\times 10^3,即 N2×103N\le 2\times 10^3

特殊性质 B:保证存在正整数 kkk5×105k\le 5\times 10^5)满足 E(k)=E(N)E(k)=E(N)T(k)=A(N)×T(N)T(k)=A(N)\times T(N)

特殊性质 C:保证 aa 是质数(注意:不保证 NN 是质数)。

  • 分值分配:每个测试点的分值为 1010 分。对于单个测试点,如果你的程序对第一问和第二问均回答正确,则获得满分 1010 分;若只回答对了第一问,得 22 分;若只回答对了第二问,得 88 分;若两问均未答对(或输出格式错误),得 00 分。