Cho q truy vấn, mỗi truy vấn gồm ba số n,k,p với p là số nguyên tố. Hãy tính (kn)modp (tổ hợp chập k của n phần tử, lấy modulo p).
Vì n có thể rất lớn, hãy dùng định lý Lucas: viết n và k theo cơ số p, khi đó (kn)≡∏i(kini)(modp), với ni,ki là các chữ số cơ số p. Quy ước (kn)=0 nếu k>n.
Dòng đầu chứa q. q dòng tiếp theo, mỗi dòng ba số n k p.
1≤q≤105, 0≤k≤n≤1018, 2≤p≤106 (p nguyên tố).
Với mỗi truy vấn, in (kn)modp trên một dòng.
Ví dụ:
Đầu vào:
3
5 2 7
10 3 5
1000000000000 1 1000003
Đầu ra:
3
0
9
Giải thích:
Đang tải editor...