시간 제한 메모리 제한 제출 정답 맞은 사람 정답 비율
2 초 512 MB 4 3 3 75.000%

문제

오늘 상근이는 여자친구를 주기 위해 꽃을 S개 사려고 한다.

상근이네 동네에는 꽃집이 N개 있다. 각각의 i번째 꽃집은 꽃을 fi개까지 팔 수 있다. 한 가게에서 파는 모든 꽃의 색은 같은 색이다. 같은 색의 꽃은 모두 구분할 수 없다. 서로 다른 가게에서 같은 색의 꽃을 파는 경우는 없다.

꽃을 S개 구매하는 방법의 수를 구하는 프로그램을 작성하시오.

입력

첫째 줄에 N, S가 주어진다. (1 ≤ N ≤ 20, 0 , S ≤ 1014)

둘째 줄에는 f1, f2, ..., fN이 주어진다. (0 ≤ fi ≤ 1012)

출력

꽃을 S개 구매하는 방법의 수 109+7로 나눈 나머지를 출력한다.

예제 입력

2 3
1 3

예제 출력

2

예제 입력 2

2 4
2 2

예제 출력 2

1

예제 입력 3

3 5
1 3 2

예제 출력 3

3

힌트

예제 1의 경우 {1, 2}, {0, 3}으로 꽃을 구매하는 방법이 있다.

예제 2의 경우에는 {2, 2}로 꽃을 구매할 수 있다.

예제 3의 경우에는 {1, 2, 2}, {0, 3, 2}, {1, 3, 1}이 가능하다.

출처