Tổ hợp Lucas

Xem dưới dạng PDF

Gửi bài giải


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

Kiểu bài tập

Tổ hợp chập C(n, k) là số cách chọn k phần tử từ n phần tử.

Cho hai số nguyên dương n, k và số nguyên tố p. Hãy tính C(n, k) mod p với p là số nguyên tố.

Sử dụng định lý Lucas: Biểu diễn n và k trong hệ cơ số p: n = n0 + n1×p + n2×p² + ... + nr×p^r k = k0 + k1×p + k2×p² + ... + kr×p^r

Khi đó: C(n, k) ≡ ∏ C(ni, ki) (mod p)

Lưu ý: C(ni, ki) = 0 nếu ki > ni.

Đầu vào

Một dòng duy nhất chứa ba số nguyên n, k, p (0 ≤ k ≤ n ≤ 10^18, 1 < p ≤ 10^6, p là số nguyên tố).

Đầu ra

Một số nguyên duy nhất là C(n, k) mod p.

Ví dụ
Input:
10 3 7

Output:
1
Giải thích

C(10, 3) = 120, 120 mod 7 = 1.


Nhận xét

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