아이스하키 세계선수권대회
시간 제한1초메모리 제한1024 MB
최대 40개 경기 입장권 가격 중 합이 예산 M을 넘지 않는 부분집합 개수를 구합니다.
문제
올해 아이스하키 세계선수권대회는 체코에서 열렸다. 프라하에 도착한 보베크는 경기를 몇 개 보려고 한다. 특별히 응원하는 팀도 없고 시간 제약도 없어서, 돈만 넉넉하면 모든 경기를 볼 수 있다. 그러나 보베크가 가진 돈은 정해진 액수의 체코 코루나뿐이고, 이 돈은 전부 입장권을 사는 데 쓸 수 있다.
경기마다 입장권 가격이 주어질 때, 가진 돈을 넘기지 않으면서 볼 경기를 고르는 방법이 몇 가지인지 구하라. 어떤 경기를 한쪽에서는 보고 다른 쪽에서는 보지 않는다면 두 방법은 서로 다르다. 한 경기도 보지 않는 것도 한 가지 방법으로 센다.
입력
첫째 줄에 경기 수 과 보베크가 쓸 수 있는 금액 이 주어진다. (, )
둘째 줄에 경기 개의 입장권 가격이 공백으로 구분되어 주어진다. 각 가격은 이상 이하의 정수다.
출력
가능한 방법의 수를 한 줄에 출력한다. 의 제한 때문에 이 값은 을 넘지 않는다.
힌트
가격이 , , , , 이고 예산이 일 때 가능한 방법은 다음 여덟 가지다.
- 한 경기도 보지 않는다
- 짜리 경기
- 짜리 첫 번째 경기
- 짜리 두 번째 경기
- 짜리 경기와 짜리 첫 번째 경기
- 짜리 경기와 짜리 두 번째 경기
- 짜리 경기 두 개
- 짜리 경기