Надіслати розв'язок
Бали:
17,00 (partial)
Time limit:
1.0s
Memory limit:
500M
Input:
stdin
Output:
stdout
Problem type
Розглянемо грошову систему, що складається з ~n~ монет. Кожна монета має додатне ціле число.
Ваше завдання полягає в тому, щоб обчислити кількість різних упорядкованих способів, за допомогою яких ви можете отримати грошову суму ~x~, використовуючи доступні монети.
Наприклад, якщо монети {2,3,5}, а бажана сума дорівнює 9, є три способи:
- 2+2+5
- 3+3+3
- 2+2+2+3
Обмеження
- ~1 \le n \le 100~
- ~1 \le x \le 10^6~
- ~1 \le c_i \le 10^6~
Формат вхідних даних
У першому рядку вводу є два цілих числа ~n~ і ~x~: кількість монет і бажана сума грошей.
У другому рядку є ~n~ різних цілих чисел ~c_1,c_2,\dots,c_n~: вартість кожної монети.
Формат вихідних даних
Виведіть одне ціле число: кількість шляхів за модулем ~10^9+7~.
Приклад вхідних даних
3 9
2 3 5
Приклад вихідних даних
3
Коментарі