Đếm tập con

Xem dưới dạng PDF

Gửi bài giải


Điểm: 10
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 64M
đầu vào: stdin
Đầu ra: stdout

Tác giả:
Kiểu bài tập

Bobo có một dãy số \(a_1, a_2, ..., a_n\) và một số \(K\). Bobo muốn đếm xem có bao nhiêu tập con (khác rỗng) mà tổng các phần tử chia hết cho \(K\).

Vì \(N\) nhỏ (\(N \le 20\)), Bobo có thể dùng bitmask duyệt toàn bộ \(2^N\) tập con.

Input:

  • Dòng 1: \(N\) và \(K\) (\(1 \le N \le 20\), \(1 \le K \le 10^9\))
  • Dòng 2: \(N\) số nguyên \(a_i\) (\(1 \le a_i \le 10^9\))

Output: Một số nguyên — số tập con có tổng chia hết cho \(K\) (kể cả tập rỗng).

Ví dụ: Input:

3 2
1 2 3

Output:

4

Giải thích: Các tập con có tổng chẵn gồm {}, {2}, {1,3}, {1,2,3}.


Nhận xét

Không có ý kiến tại thời điểm này.