#P1742. Coins

Coins

描述
在银岛(Silverland),人们使用硬币。他们有面值为A₁, A₂, A₃...Aₙ的银岛硬币。有一天,托尼打开他的存钱罐,发现里面有一些硬币。他决定在附近的商店买一块非常漂亮的手表。他希望用这些硬币恰好支付手表的价格(不找零),并且他知道手表的价格不会超过m。但他不知道手表的具体价格。

你需要编写一个程序,读取n、m、A₁, A₂, A₃...Aₙ以及C₁, C₂, C₃...Cₙ(分别对应托尼拥有的面值为A₁, A₂, A₃...Aₙ的硬币数量),然后计算托尼可以用这些硬币支付多少种价格(从1到m)。

输入
输入包含多个测试用例。每个测试用例的第一行包含两个整数n(1≤n≤100)和m(m≤100000)。第二行包含2n个整数,表示A₁, A₂, A₃...Aₙ和C₁, C₂, C₃...Cₙ(1≤Aᵢ≤100000,1≤Cᵢ≤1000)。最后一个测试用例后跟着两个0。

输出
对于每个测试用例,输出一行答案。

示例输入 1
3 10
1 2 4 2 1 1
2 5
1 4 2 1
0 0
示例输出 1
8
4
来源
LouTiancheng@POJ