- 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.