#Lutece2738. 啥b二次元 2
啥b二次元 2
Migrated from Lutece 2738 啥b二次元 2
All parts of this problem, including description, images, samples, data and checker, might be broken. If you find bugs in this problem, please contact the admins.
Description
上上回说到 Yo 和女朋友分手后全身心投入了二次元抽卡手游。
由于 Yo 和女朋友分手了所以现在有很多钱,Yo 氪了很多钱抽了很多卡。
Yo 总共拥有 种卡牌,每种卡牌有一个战力值 和花费 。
Yo 将进行一次扫荡任务。
任务开始时 Yo 有 点体力,Yo 可以进行若干次对战,每次对战消耗一点体力,每次对战可以选择若干张卡牌(或者不选卡牌)出战,每种卡牌都有无限张,每次出战每种卡牌都可以选无限次。这次扫荡的战果值为所有对战的所有出战卡牌战力的乘积,如果没有卡牌出战则为 。
由于司马策划,任务开始时就需要确定对战次数,即选择一个非负整数 作为对战次数,那么 Yo 这 次对战所选的所有卡牌花费之和需要不超过 。
由于 Yo 和女朋友分手了所以现在有很多时间,所以 Yo 想知道所有不同情况的得到的战果值。
由于 Yo 还要玩二次元游戏,所以他只想知道所有可能情况的战果值之和对 取模的结果。
由于 Yo 还要玩二次元游戏,所以他将这个问题交个你了。
两种情况不同当且仅当对战次数不同或者某次出战选择某种卡牌的次数不同。
Input
第一行输入两个整数 表示卡牌种数和体力值。 第二行输入 个空格隔开的整数 表示每种卡牌的花费。 第三行输入 个空格隔开的整数 表示每种卡牌的战力。
Output
输出一个整数表示答案。
Samples
3 3
1 1 2
6 3 6
6559
7 6
1 2 4 3 2 4 5
15 7 13 12 11 14 4
339955269
Constraints
Note
样例1解释: 三种卡牌编号 。
出战 次:战果值为
出战 次: 花费 :战果值为 花费 : 出战 号卡:战果值为 出战 号卡:战果值为 和为
出战 次: 花费 :战果值为 花费 :选择一张 号 号,在第一 二次出战四种情况:战果值和为 花费 :选择两张 号 号 两次都出战1号: 都出战 号: 第一次 号,第二次 号: 第一次 号,第二次 号: 第一次出战两张 号,第二次不出: 第一次出战两张 号,第二次不出: 第一次出战一张 号一张 号,第二次不出: 第一次不出,第二次出战一张 号一张 号: 第一次不出,第二次出战两张 号: 第一次不出,第二次出战两张 号: 第一次出战一张 号,第二次不出: 第一次不出,第二次出战一张 号: 和为
出战 次: 花费 :战果值为 花费 :选择 号 号,在第一 二 三次出战六种情况:战果值和为 花费 : 选择一张 号,三次出战中选一次:战果值为 选择两张 号 号,分配在三次出战里: 两张 号,战果值和为 两张 号,战果值和为 各一张,战果值和为 花费 的战果值和为 花费 : 总共出战三张 号卡,有 种情况: 1/1/1 11//1 11/1/ 1/11/ /11/1 1//11 /1/11 111// /111/ //111 两个隔开的即三次出战的卡牌编号 贡献为 三张 号卡同理,贡献为 一张 号卡两张 号卡有 种情况: 一张 号卡两张 号卡同理: 一张 号卡一张 号卡有 种情况: 一张 号卡一张 号卡同理: 花费 的战果值和为 出战三次的战果值和为
则答案为
Resources
2022 UESTC ICPC Training for Math and Geometry