Đếm các tập con II


Submit solution

Points: 3.2 (partial)
Time limit: 0.1s
Memory limit: 98M

Author:
Problem type
Allowed languages
Ada, Assembly, Awk, C, C++, C11, CLANG, CLANGX, Classical, COBOL, Coffee, CSC, D lang, DART, F95, FORTH, Fortrn, GAS32, GO, Haskell, Itercal, Java, kotlin, LEAN, LISP, LUA, MONOVB, Nasm, OCAML, Pascal, Perl, php, PIKE, prolog, Pypy, Python, Ruby 2, RUST, Scala, SCM, SED, SWIFT, TCL, TUR, V8JS, VB, ZIG

Cho S là một tập hợp các số tự nhiên, số nguyên dương m và số tự nhiên r (0r<m); đếm số lượng tập con phân biệt của S (trừ tập rỗng) mà tích các phần tử trong mỗi tập con đó chia cho m có số dư là r.

Đầu vào

Dòng đầu chứa số tự nhiên n (1n1000).

Dòng tiếp theo chứa hai số tự nhiên m (1m1000)r (0r<m).

Dòng cuối cùng gồm n số tự nhiên trong đoạn [0,109] là các phần tử của tập hợp.

Ghi chú: n số tự nhiên nhập vào đảm bảo đôi một phân biệt.

Đầu ra

Một số tự nhiên duy nhất là số lượng tập con cần tìm.

Chú ý: Kết quả lấy mod không âm cho 109+7.

Ví dụ

Đầu vào:

Copy
4
3 2
1 2 3 4

Đầu ra:

Copy
4

Giải thích: 4 tập con của {1,2,3,4} có tích các phần tử chia 3 dư 2 là: {2}, {1,2}, {2,4}, {1,2,4}.

QDUY

Comments

There are no comments at the moment.