#aBC362E. [ABC362E] Count Arithmetic Subsequences

[ABC362E] Count Arithmetic Subsequences

AT_abc362_e [ABC362E] Count Arithmetic Subsequences

题目描述

给定一个长度为 NN 的数列 A=(A1,A2,,AN)A=(A_1,A_2,\dots,A_N)。对于每个 k=1,2,,Nk=1,2,\dots,N,请你求出 AA 的所有长度为 kk 的(不一定连续的)等差子序列的个数,并对 998244353998244353 取模。注意,如果两个子序列的选取位置不同,即使它们的数值序列相同,也视为不同的子序列。

子序列指的是从数列 AA 中删除 00 个或多个元素后,保留剩下元素原有顺序得到的数列。

输入格式

输入从标准输入中给出,格式如下:

NN A1A_1 A2A_2 \dots ANA_N

输出格式

请按顺序输出 k=1,2,,Nk=1,2,\dots,N 的答案,用空格隔开,输出一行。

输入输出样例 #1

输入 #1

5
1 2 3 2 3

输出 #1

5 10 3 0 0

输入输出样例 #2

输入 #2

4
1 2 3 4

输出 #2

4 6 2 1

输入输出样例 #3

输入 #3

1
100

输出 #3

1

说明/提示

限制条件

  • 1N801 \leq N \leq 80
  • 1Ai1091 \leq A_i \leq 10^9
  • 输入均为整数

样例解释 1

  • 长度为 11 的子序列共有 55 个,这些都是长度为 11 的等差数列。
  • 长度为 22 的子序列共有 1010 个,这些都是长度为 22 的等差数列。
  • 长度为 33 的等差子序列有 33 个,分别是 (A1,A2,A3),(A1,A2,A5),(A1,A4,A5)(A_1,A_2,A_3),(A_1,A_2,A_5),(A_1,A_4,A_5)
  • 长度为 44 及以上的等差子序列不存在。

由 ChatGPT 4.1 翻译