CF1581A.CQXYM Count Permutations

传统题 时间 2000 ms 内存 256 MiB 3 尝试 1 已通过 1 标签

CQXYM Count Permutations

题目描述

CQXYM 正在统计长度为 2n2n 的排列。

排列是一个包含 11nnnn 个互不相同整数的数组,顺序任意。例如,[2,3,1,5,4][2,3,1,5,4] 是一个排列,但 [1,2,2][1,2,2] 不是排列(22 在数组中出现了两次),[1,3,4][1,3,4] 也不是排列(n=3n=3,但数组中有 44)。

一个长度为 2n2n 的排列 pp 只有当满足 pi<pi+1p_i < p_{i+1}ii 的个数不少于 nn 时,才会被统计。例如:

  • 排列 [1,2,3,4][1, 2, 3, 4] 会被统计,因为满足 pi<pi+1p_i < p_{i+1}ii33 个(i=1,2,3i=1,2,3)。
  • 排列 [3,2,1,4][3, 2, 1, 4] 不会被统计,因为满足 pi<pi+1p_i < p_{i+1}ii 只有 11 个(i=3i=3)。

CQXYM 想让你帮他统计满足条件的排列个数,答案对 10000000071000000007109+710^9+7)取模。

此外,取模运算 是取余数。例如:

  • 7mod3=17 \bmod 3 = 1,因为 7=32+17 = 3 \cdot 2 + 1
  • 15mod4=315 \bmod 4 = 3,因为 15=43+315 = 4 \cdot 3 + 3

输入格式

输入包含多组测试数据。

第一行包含一个整数 ttt1t \geq 1),表示测试用例的数量。接下来每组测试用例仅一行,包含一个整数 nn1n1051 \leq n \leq 10^5)。

保证所有测试用例中 nn 的总和不超过 10510^5

输出格式

对于每个测试用例,输出一行答案。

说明/提示

n=1n=1 时,只有一个排列满足条件:[1,2][1,2]

在排列 [1,2][1,2] 中,p1<p2p_1 < p_2,有一个 i=1i=1 满足条件。由于 1n1 \geq n,该排列应被统计。在排列 [2,1][2,1] 中,p1>p2p_1 > p_2,因为 0<n0 < n,该排列不应被统计。

n=2n=2 时,共有 1212 个满足条件的排列:[1,2,3,4][1,2,3,4][1,2,4,3][1,2,4,3][1,3,2,4][1,3,2,4][1,3,4,2][1,3,4,2][1,4,2,3][1,4,2,3][2,1,3,4][2,1,3,4][2,3,1,4][2,3,1,4][2,3,4,1][2,3,4,1][2,4,1,3][2,4,1,3][3,1,2,4][3,1,2,4][3,4,1,2][3,4,1,2][4,1,2,3][4,1,2,3]

由 ChatGPT 4.1 翻译

样例

4
1
2
9
91234
1
12
830455698
890287984

在线编程 IDE

建议全屏模式获得最佳体验