序列立方
Time Limit : 3000/1500ms (Java/Other) Memory Limit : 524288/524288K (Java/Other)
Total Submission(s) : 1 Accepted Submission(s) : 0
Font: Times New Roman | Verdana | Georgia
Font Size: ← →
Problem Description
给定长度为 $N$ 的序列 $a$。
一个序列有很多个子序列,每个子序列在序列中出现了若干次。
小马想请你输出序列 $a$ 每个非空子序列出现次数的立方值的和,答案对 $998244353$​ 取模。
你可以通过样例解释来辅助理解题意。
一个序列有很多个子序列,每个子序列在序列中出现了若干次。
小马想请你输出序列 $a$ 每个非空子序列出现次数的立方值的和,答案对 $998244353$​ 取模。
你可以通过样例解释来辅助理解题意。
Input
第一行包含 $1$ 个正整数 $N$​。
第二行包含 $N$ 个正整数,第 $i$ 个正整数表示 $a_i$($1 \leq a_i,N \leq 250$)。
第二行包含 $N$ 个正整数,第 $i$ 个正整数表示 $a_i$($1 \leq a_i,N \leq 250$)。
Output
输出共 $1$ 行,输出 $1$ 个整数,表示最终答案,答案对 $998244353$ 取模。
Sample Input
3 1 2 2
Sample Output
19
Hint
子序列 $[1]$ 出现了 $1$ 次,立方值为 $1$。
子序列 $[1,2]$ 出现了 $2$ 次,立方值为 $8$。
子序列 $[1,2,2]$ 出现了 $1$ 次,立方值为 $1$。
子序列 $[2]$ 出现了 $2$ 次,立方值为 $8$。
子序列 $[2,2]$ 出现了 $1$ 次,立方值为 $1$​。
所以答案为 $1+8+1+8+1=19$。
子序列 $[1,2]$ 出现了 $2$ 次,立方值为 $8$。
子序列 $[1,2,2]$ 出现了 $1$ 次,立方值为 $1$。
子序列 $[2]$ 出现了 $2$ 次,立方值为 $8$。
子序列 $[2,2]$ 出现了 $1$ 次,立方值为 $1$​。
所以答案为 $1+8+1+8+1=19$。
Source
2024“钉耙编程”中国大学生算法设计超级联赛(1)