101595: [AtCoder]ABC159 F - Knapsack for All Segments
Memory Limit:256 MB
Time Limit:2 S
Judge Style:Text Compare
Creator:
Submit:0
Solved:0
Description
Score : $600$ points
Problem Statement
Given are a sequence of $N$ integers $A_1$, $A_2$, $\ldots$, $A_N$ and a positive integer $S$.
For a pair of integers $(L, R)$ such that $1\leq L \leq R \leq N$, let us define $f(L, R)$ as follows:
- $f(L, R)$ is the number of sequences of integers $(x_1, x_2, \ldots , x_k)$ such that $L \leq x_1 < x_2 < \cdots < x_k \leq R$ and $A_{x_1}+A_{x_2}+\cdots +A_{x_k} = S$.
Find the sum of $f(L, R)$ over all pairs of integers $(L, R)$ such that $1\leq L \leq R\leq N$. Since this sum can be enormous, print it modulo $998244353$.
Constraints
- All values in input are integers.
- $1 \leq N \leq 3000$
- $1 \leq S \leq 3000$
- $1 \leq A_i \leq 3000$
Input
Input is given from Standard Input in the following format:
$N$ $S$ $A_1$ $A_2$ $...$ $A_N$
Output
Print the sum of $f(L, R)$, modulo $998244353$.
Sample Input 1
3 4 2 2 4
Sample Output 1
5
The value of $f(L, R)$ for each pair is as follows, for a total of $5$.
- $f(1,1) = 0$
- $f(1,2) = 1$ (for the sequence $(1, 2)$)
- $f(1,3) = 2$ (for $(1, 2)$ and $(3)$)
- $f(2,2) = 0$
- $f(2,3) = 1$ (for $(3)$)
- $f(3,3) = 1$ (for $(3)$)
Sample Input 2
5 8 9 9 9 9 9
Sample Output 2
0
Sample Input 3
10 10 3 1 4 1 5 9 2 6 5 3
Sample Output 3
152