该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。
凸序列
所有输入均从 convex.in 读取,所有输出均写入 convex.out。
时间限制:4 秒。内存限制:256 MiB。
题目描述
给定两个正整数 N,H 和一个非负整数 M。考虑所有长度为 N 的非负整数序列 A1,A2,…,AN,要求元素总和恰好为 M,并且对于所有 2≤i≤N−1,都有
Ai−1+Ai+1≥2Ai.
对于每个满足要求的序列 A,将其中所有大于 H 的元素改成 H,得到序列 B,即 Bi=min(Ai,H)。
求一共能得到多少个不同的序列 B,答案对 998244353 取模。多个序列 A 得到同一个序列 B 时,只计为一种。
输入格式
输入一行,包含三个整数 N,M,H。
输出格式
输出一行一个整数,表示不同序列 B 的数量对 998244353 取模后的结果。
样例
样例 1
输入:
3 6 2
输出:
15
例如,(2,0,4)、(3,0,3)、(4,0,2) 都满足要求,且都会得到 (2,0,2),这一结果只计一次。
本例共有 18 个满足要求的原序列,它们得到的不同结果共有 15 个。
附加样例
样例 2 见 down/convex2.in 与 down/convex2.ans,满足测试点 5∼6 的限制。
样例 3 见 down/convex3.in 与 down/convex3.ans,满足测试点 7∼10 的限制。
样例 4 见 down/convex4.in 与 down/convex4.ans,满足测试点 15∼20 的限制。
数据范围
| 测试点编号 |
N≤ |
M≤ |
H≤ |
特殊性质 |
| 1∼4 |
8 |
20 |
50 |
无 |
| 5∼6 |
40 |
1000 |
1 |
| 7∼10 |
25 |
50 |
A |
| 11∼14 |
1000 |
30 |
无 |
| 15∼20 |
50 |
对于所有测试点,1≤N≤40,0≤M≤1000,1≤H≤50。
特殊性质 A:H>M。