사탕 가게

면접 대비

시간 제한1초메모리 제한256 MB

요약
각 테스트 케이스마다 합이 C 이상이 되는 사탕 가격 부분집합 개수를 65537로 나눈 나머지로 구합니다.
난이도

보통10점 중 4점

유형
동적 계획법
정답자
아직 제출이 없습니다

문제

애니는 사탕을 좋아해서 동네 사탕 가게에서 사탕을 사려고 한다. 마침 돈이 아주 많아서 원하는 사탕은 얼마든지 살 수 있다. 애니는 사탕값으로 CC 크로네 이상을 쓰려고 하고, 같은 종류는 최대 한 개까지만 산다.

CC 크로네 이상을 쓰는 방법은 아주 많아서, 애니는 사기 전에 그 방법이 몇 가지인지 알고 싶어 한다. 부모님이 애니는 아직 컴퓨터를 쓰기에 어리다고 생각하기 때문에, 애니는 방법의 수를 세는 프로그램을 대신 짜 달라고 부탁했다.

애니는 1,000,000,007 같은 큰 수를 싫어하니, 방법의 수를 6553765537로 나눈 나머지를 구하자.

입력

첫째 줄에 테스트 케이스의 개수 TT가 주어진다. 각 테스트 케이스의 첫째 줄에는 사탕 종류의 수 NN과 애니가 쓰려는 최소 금액 CC가 주어진다. 둘째 줄에는 ii번 사탕의 가격 aia_i가 크로네 단위로 NN개, 공백으로 구분되어 주어진다.

  • 0<T≤1000 < T \le 100
  • 0<N≤2000 < N \le 200
  • 0<C≤100000 < C \le 10000
  • 0<ai≤2000 < a_i \le 200

출력

각 테스트 케이스마다 애니가 CC 크로네 이상어치 사탕을 사는 방법의 수를 6553765537로 나눈 나머지를 한 줄에 하나씩 출력한다.

예제2

  1. 예제 1

    입력
    2
    5 10
    5 6 7 8 9
    10 100
    10 10 10 10 10 10 10 10 11 9
    
    예상 출력
    26
    1
    
  2. 예제 2

    입력
    1
    1 1
    1
    
    예상 출력
    1