페이지가 로드되지 않나요? 여기를 눌러보면 고쳐질 수도 있어요.
Placeholder

#1377

마가리타 1s 64MB

문제

각 margarita(과일 주스와 테킬라를 섞은 칵테일)의 가격이 주어졌을 때 얼마나 다양한 종류로 선택할 수 있는지 찾아야 한다. 각 종류는 하나씩만 구매할 수 있다. 주어진 돈 내에서 구매할 수 있으며 남은 돈은 선택하지 않는 상품의 가격보다 작아야 한다. 예를 들어 $25가 주어졌고, 다음과 같이 가격이 주어지면,

 

종류 A B C D H J 가격 8 9 8 7 16 5

 

가능한 모든 방법은: ABC(25), ABD(24), ABJ(22), ACD(23), ACJ(21), ADJ( 20), AH(24), BCD(24), BCJ(22), BDJ(21), BH(25), CDJ(20), CH(24), DH(23) and HJ(21). 으로 15가지가 된다.


입력

테스트 케이스의 수 N(1≤N≤1,000)이 입력되고. 각 케이스는 V, D로 시작한다. V는 상품종류의 수(1≤V≤30), D는 주어진 돈(1≤D≤1,000)을 의미한다. 다음으로 V개의 가격이 주어진다. 각 가격은 최소 (1)이상이며, 답이 unsigned int범위 내에서 나오도록 입력된다.


출력

각 케이스 마다 가능한 모든 경우의 수를 출력한다.


예제

2

6 25
8 9 8 7 16 5
30 250
1 2 3 4 5 6 7 8 9 10 11
12 13 14 15 16 17 18 19 20
21 22 23 24 25 26 27 28 29 30
1 15

2 16509438

출처

Greater New York 2006, poj 3093
로그인해야 코드를 작성할 수 있어요.