QOJ.ac

QOJ

実行時間制限: 2 s メモリ制限: 256 MB 満点: 100

#1924. 幂的结合

統計

考虑以下无穷序列集合:

  • 序列 #1,记作 $S(1)$,为 $1, 2, 3, \dots, n, \dots$;
  • 序列 #2,记作 $S(2)$,为 $1, 4, 9, \dots, n^2, \dots$;
  • 序列 #3,记作 $S(3)$,为 $1, 8, 27, \dots, n^3, \dots$;
  • 以此类推;
  • 序列 #$k$,记作 $S(k)$,为 $1, 2^k, 3^k, \dots, n^k, \dots$;
  • 以此类推。

显然,这些序列中的每一个都是单调递增的。 我们称序列 $S(i_1, i_2, \dots, i_m)$ 为序列 $S(i_1), S(i_2), \dots, S(i_m)$ 的并集,如果:

  • 序列 $S(i_1), S(i_2), \dots, S(i_m)$ 中的每个元素都属于 $S(i_1, i_2, \dots, i_m)$;
  • 属于多个序列 $S(i_1), S(i_2), \dots, S(i_m)$ 的元素在 $S(i_1, i_2, \dots, i_m)$ 中仅出现一次;
  • 序列 $S(i_1, i_2, \dots, i_m)$ 是单调递增的。

例如,$S(2, 3, 5)$ 为 $1, 4, 8, 9, 16, 25, 27, 32, 36, 49, 64, 81, 100, 121, 125, \dots$ 你的任务是编写一个程序,处理一系列形式为“查找 $S(i_1, i_2, \dots, i_m)$ 的第 $N$ 个元素”的查询,其中 $N, m, i_1, i_2, \dots, i_m$ 为输入数据。

输入格式

输入的第一行包含一个整数,表示查询的数量 $q$ ($1 \le q \le 987$)。随后包含 $q$ 个查询。每个查询占用两行。每个查询的第一行包含 $N$ 和 $m$,其中 $N$ ($1 \le N \le 10^9$) 是要确定的元素的索引(从 1 开始),$m$ ($1 \le m \le 42$) 是要合并的序列数量。每个查询的第二行包含整数 $i_1, i_2, \dots, i_m$(所有整数均不相同,且都在 $1 \le i_k \le 50$ 范围内)。

输出格式

程序应为每个查询输出结果,每个结果占一行。保证答案不超过 $10^{17}$。

样例

输入 1

2
12 3
2 3 5
17 2
4 7

输出 1

81
38416

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.