Problem10880--ABC159 - F - Knapsack for All Segments

10880: ABC159 - F - Knapsack for All Segments

[Creator : ]
Time Limit : 1.000 sec  Memory Limit : 512 MiB

Description

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$.

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$.

Constraints

-   All values in input are integers.
-   $1 \leq N \leq 3000$
-   $1 \leq S \leq 3000$
-   $1 \leq A_i \leq 3000$

Sample 1 Input

3 4
2 2 4

Sample 1 Output

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 2 Input

5 8
9 9 9 9 9

Sample 2 Output

0

Sample 3 Input

10 10
3 1 4 1 5 9 2 6 5 3

Sample 3 Output

152

Source/Category