Create Windy's Job

Description
Windy has N jobs, the i-th job will cost Windy Pi seconds to finish it, and will get Vi sense of achievement.
Windy want to get at least K sense of achievement, the minimum seconds Windy must pay?
Input
There are many test cases.(the number of test cases <= 150)
For each test case:
The first line contains two integers N and K.
The second line contains N integers Pi.
The third line contains N integers Vi.
There is a blank line after each test case.
1 <= N <= 40
0 <= K <= 1000000000
1 <= Pi, Vi <= 50000000
Output
For each test case output the answer on a single line.If Windy can't get at least K sense of achievement, print -1.
Sample Input
3 6
5 6 10
3 3 6

3 10
5 6 10
3 7 6

3 10
3 5 2
1 3 2


Sample Output
10
11
-1
Author