传统题 文件IO:mod 1000ms 256MiB

模(mod)

该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。

时间限制:1000ms

空间限制:512MB

问题描述

给定长度为 nn 的正整数序列 aa,小 Z 给出了以下函数:

void mod(int x){
	for(int i=1;i<=n;i++) a[i]=a[i]%x;
}

你可以执行这个函数任意次,且每次调用函数的参数可以任意指定,但要求调用的参数 xx 为正整数,请问最终可以得到多少种不同的 aa 序列,答案对 998244353998244353 取模。

输入格式

输入第一行,包含 11 个正整数 nn。

第二行给定长度为 nn 的正整数序列 aa。

输出格式

输出一个整数,表示答案,答案对 998244353998244353 取模。

样例输入1

2
6 5

样例输出1

7

样例解释

合法解有 $[6, 5], [2, 1], [1, 0], [0, 5], [0, 2], [0, 1], [0, 0]$。

样例输入2

5
1 2 4 8 16

样例输出2

69

样例输入3

20
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20

样例输出3

140268

样例输入4

11
11 451 419 198 10 114 51 41 9 198 10

样例输出4

287391069

评测数据规模

测试点编号 nn aia_i 特殊性质
11 ≤2\leq 2 ≤500\leq 500 无
2,32,3 ≤500\leq 500 ≤20\leq 20
4,5,6,7,84,5,6,7,8 ≤500\leq 500 AA
9,109,10 无

特殊性质 A : 保证 1≤i≤n1 \leq i \leq n 有 ai=ia_i=i。