Time Limit: 1 second(s) | Memory Limit: 32 MB |
In a strange shop there are n types of coins of value A_{1}, A_{2} ... A_{n}. C_{1}, C_{2}, ... C_{n} denote the number of coins of value A_{1}, A_{2} ... A_{n} respectively. You have to find the number of ways you can make K using the coins.
For example, suppose there are three coins 1, 2, 5 and we can use coin 1 at most 3 times, coin 2 at most 2 times and coin 5 at most 1 time. Then if K = 5 the possible ways are:
1112
122
5
So, 5 can be made in 3 ways.
Input starts with an integer T (≤ 100), denoting the number of test cases.
Each case starts with a line containing two integers n (1 ≤ n ≤ 50) and K (1 ≤ K ≤ 1000). The next line contains 2n integers, denoting A_{1}, A_{2} ... A_{n}, C_{1}, C_{2} ... C_{n} (1 ≤ A_{i} ≤ 100, 1 ≤ C_{i} ≤ 20). All A_{i} will be distinct.
For each case, print the case number and the number of ways K can be made. Result can be large, so, print the result modulo 100000007.
Sample Input |
Output for Sample Input |
2 3 5 1 2 5 3 2 1 4 20 1 2 3 4 8 4 2 1 |
Case 1: 3 Case 2: 9 |
Developed and Maintained by
JANE ALAM JAN |
Copyright © 2012
LightOJ, Jane Alam Jan |