SP8327 PROGPROG - Progressive progressions

题目描述

等差数列是一种数列形式,满足任意相邻两个数之间的差值相等。具体来说,一组数字 $a_1, a_2, \ldots, a_n$ 即为等差数列,当且仅当对于每对相邻元素 $a_{i+1}$ 和 $a_i$,它们的差值是相同的。 现有多组等差数列构成的序列,表示为:$A_1 = (a_{1,1}, a_{1,2}, \ldots, a_{1,n_1})$,$A_2 = (a_{2,1}, a_{2,2}, \ldots, a_{2,n_2})$,$\ldots$,$A_k = (a_{k,1}, a_{k,2}, \ldots, a_{k,n_k})$。 定义「递进等差数列」需要满足以下几个条件: - 任意相邻两组等差数列之间,第 $i$ 组的最后一个元素等于第 $i+1$ 组的第一个元素:$a_{i,n_i} = a_{i+1,1}$,其中 $1 \leq i < k$。 - 每组等差数列 $A_i$ 的公差 $c_i$ 是 $a_{i,1}$ 的一个正因数。 - 所有公差是递增关系,即 $c_1 < c_2 < \ldots < c_k$。 - 每组等差数列的长度至少是 2,即 $n_i > 1$。 - 组数 $k$ 至少为 1,即 $k \geq 1$。 现在你的任务是计算满足起始值为 $a_{1,1} = 1$,终止值为 $a_{k,n_k} = N$ 的「递进等差数列」的总数。考虑到结果可能非常大,请输出结果与 100000007 取模后的值。

输入格式

第一行输入为一个整数 $T$,表示测试用例的数量。 接下来每行包含一个整数 $N$,表示每个测试用例目标终止值。

输出格式

对于每个测试用例, 输出符合条件的「递进等差数列」的数量 mod 100000007 的结果。

说明/提示

- 测试用例个数满足 $1 \leq T \leq 100$。 - 终止值满足 $1 \leq N \leq 10^5$。 **本翻译由 AI 自动生成**