Tổ hợp đồng xu 1

Xem dạng PDF

Gửi bài giải

Điểm: 100,00 (OI)
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 256M
Input: stdin
Output: stdout

Tác giả:
Dạng bài
Ngôn ngữ cho phép
C++, Python
Tổ hợp đồng xu 1
Mô tả và yêu cầu

Hãy xét một hệ thống tiền tệ gồm n loại đồng xu. Mỗi đồng xu có giá trị nguyên dương.
Nhiệm vụ của bạn là tính số cách khác nhau để tạo thành tổng tiền bằng x bằng cách sử
dụng các đồng xu cho trước.
Ví dụ: nếu các đồng xu là {2, 3, 5} và tổng tiền cần tạo là 9, thì có 8 cách sau:
2 + 2 + 5
2 + 5 + 2
5 + 2 + 2
3 + 3 + 3
2 + 2 + 2 + 3
2 + 2 + 3 + 2
2 + 3 + 2 + 2
3 + 2 + 2 + 2
Thứ tự của đồng xu trong dãy có ảnh hưởng, nên các tổ hợp khác nhau về thứ tự đều được
tính là cách khác nhau.

Dữ liệu vào

 Dòng đầu tiên chứa hai số nguyên n và x — số loại đồng xu và tổng tiền cần tạo.

 Dòng thứ hai chứa n số nguyên phân biệt c₁, c₂, ..., cₙ — giá trị của từng đồng xu.

Dữ liệu ra

 In ra một số nguyên duy nhất: số cách tạo thành tổng x, lấy modulo 109 + 7

Giới hạn và chấm điểm

 1 ≤ 𝑛 ≤ 100
 1 ≤ 𝑥 ≤ 106

 1 ≤ 𝑐𝑖 ≤ 106

Ví dụ
INPUT                                        OUTPUT
           3 9                                         8
           2 3 5

Tải PDF gốc


Bình luận

Hãy đọc nội quy trước khi bình luận.


Không có bình luận tại thời điểm này.