#P12541. [集训队互测 2024day2]没有创意的题目名称

[集训队互测 2024day2]没有创意的题目名称

题目描述

给定一个正整数 nn 和一个长度为 n+1n+1 的序列 lim0,lim1,lim2,,limnlim_0,lim_1,lim_2,\dots,lim_n,求长度为 n+1n+1 的整数序列 f0,f1,f2,,fnf_0,f_1,f_2,\dots,f_n 的方案数,使得以下条件成立。

  • 对于所有 0in0\le i\le n,有 0filimi0\le f_i\le lim_i
  • 对于任意 0mn0\le m\le n 满足,对于所有 0im0\le i\le m,有 ffi+fmi=fmf_{f_i+f_{m-i}}=f_m。(当 i>ni>n 时,fi=1f_i=-1

答案对 998244353998244353 取模。

输入格式

输入共两行。

第一行一个正整数 nn,表示序列长度为 n+1n+1

第二行 n+1n+1 个正整数,分别表示 lim0,lim1,,limnlim_0,lim_1,\dots,lim_n

输出格式

输出共一行。

第一行一个整数,表示符合要求的序列个数对 998244353998244353 取模的结果。

样例一

input
2
2 2 2
output
6
explanation

符合要求的方案有:[0,0,0],[0,1,0],[0,1,1],[0,1,2],[1,0,1],[1,1,1]

样例二

input
5
1 1 4 5 1 4
output
8

样例三

input
10
0 1 2 3 4 5 6 7 8 9 10
output
56

数据范围

下发文件中有 Unix 格式的样例。

对于 100%100\% 的数据,有 1n2000,0limin1\le n\le 2000, 0\le lim_i\le n

2020 个测试点,各个测试点的数据范围如下:

测试点编号 nn\le 其他约束
11
22 55
33 1515
44 3030
55 5050
66 7070
77 100100
88 200200
99 100100 lim0=0lim_0=0
1010 500500
1111 20002000
1212 lim0=0lim_0=0limi5lim_i\le 5
1313 limi5lim_i\le 5
1414 limi20lim_i\le 20
151615\sim 16 limi=ilim_i=i
172017\sim 20