CSES - Leirikisa 2 - Kolikot
  • Time limit: 1.00 s
  • Memory limit: 128 MB

Bittimaassa käytössä olevat kolikot ovat \{c_1,c_2,\ldots,c_n\}. Kaikilla kolikoilla on eri arvo.

Tehtäväsi on muodostaa rahamäärä x kolikoilla. Montako erilaista tapaa tähän on? Kaksi tapaa ovat erilaiset, jos niissä on jotain kolikkoa eri määrä.

Syöte

Syötteen ensimmäisellä rivillä on kaksi kokonaislukua n ja x.

Toisella rivillä on n kokonaislukua \{c_1,c_2,\ldots,c_n\}.

Tuloste

Tulosta erilaisten tapojen määrä modulo 10^9+7.

Rajat

  • 1 \le n \le 100
  • 1 \le x \le 10^5
  • 1 \le c_i \le 10^5

Esimerkki

Syöte:

3 5
2 1 5

Tuloste:

4

Selitys: tavat ovat 1+1+1+1+1, 1+1+1+2, 1+2+2 ja 5.