题目描述
编程达人聚会进入尾声,有来自柯桥和上虞的两位同学收拾背包准备回家,越城区的好友想要挽留他们,就说:“我还有个问题没解决呢!你们帮我解决了才能回家,不然就只能回我家啦!
给定n个物品和一个整数s,第i个物品的体积是a[i],定义f(l,r)表示在第l个物品到第r个物品中选出若干个物品的方案数,使得这些物品的体积之和为s。两种方案被视为不同的,当且仅当存在一个i,使得第i个物品只在其中一个方案中被选中。
你需要求出对于所有1<=l<=r<=n,f(l,r)的和。由于答案可能很大,你只需要输出答案对998244353取模的结果。
输入
第一行两个整数n和s,第二行n个整数a[i]。
输出
一行一个整数,表示答案。
样例输入输出
输入#2
复制
10 10
3 1 4 1 5 9 2 6 5 3
提示
对于20%的数据,n,s<=15;
对于50%的数据,n,s<=80;
对于80%的数据,n,s<=300;
对于所有数据,1<=n,s,a[i]<=3000。