시간 제한
메모리 제한
시간 제한
1초
메모리 제한
128 MB
청계천 산책로에는 아파트에서 규현치킨까지 이어지는 길을 따라 여러 가판대가 있다. 각 가판대는 서로 다른 마가리타를 한 종류씩 팔며, 한 가판대에서는 최대 한 잔만 살 수 있다.
승환이는 가진 돈 D를 넘지 않게 몇 개의 가판대를 골라 마가리타를 산다. 어떤 구매 조합이 유효하려면, 구매 후 남은 돈으로 고르지 않은 어떤 가판대의 마가리타도 살 수 없어야 한다. 즉, 선택한 가격의 합을 S라고 할 때 S <= D이고, 선택하지 않은 모든 가판대의 가격은 D - S보다 커야 한다.
가판대는 가격이 같아도 서로 다른 가판대로 구분한다. 각 테스트 케이스마다 유효한 구매 조합의 수를 구하라.
첫째 줄에 테스트 케이스의 개수 T (1 <= T <= 1,000)가 주어진다.
각 테스트 케이스는 두 줄로 이루어진다. 첫째 줄에는 가판대의 개수 V (1 <= V <= 30)와 승환이가 가진 돈 D (1 <= D <= 1,000)가 공백으로 구분되어 주어진다. 둘째 줄에는 각 가판대의 가격을 나타내는 양의 정수 V개가 주어진다.
모든 금액은 만원 단위이다. 따라서 D가 10이면 10만 원을 뜻하고, 가격이 2이면 2만 원을 뜻한다.
각 테스트 케이스마다 유효한 마가리타 구매 조합의 수를 출력한다.
입력은 모든 정답이 32비트 부호 없는 정수로 표현될 수 있도록 주어진다.