#5191. LCMPWR - Lũy thừa LCM

Bộ nhớ: 256 MiB Thời gian: 1000 ms Nhập/xuất từ luồng chuẩn
Kiểu bài: Thông thường Kiểu chấm: So sánh văn bản
Đưa lên bởi: Trùm CUỐI

Đề bài

Cho một dãy gồm N số nguyên dương A_1, A_2, ..., A_N . Gọi L là Bội chung nhỏ nhất (LCM) của tất cả các số trong dãy. Nhiệm vụ của bạn là tính giá trị của L^K \pmod M với hai số nguyên K M cho trước.

Dữ liệu:

  • Dòng đầu tiên chứa ba số nguyên N, K, M\ (1 \le N \le 10^5, 0 \le K \le 10^{18}, 2 \le M \le 10^9 + 7) .
  • Dòng thứ hai chứa N số nguyên dương A_1, A_2, ..., A_N\ (1 \le A_i \le 10^6) .

Kết quả: Một số nguyên duy nhất là kết quả của L^K \pmod M .

Ví dụ:

Dữ liệu:

3 2 1000
2 3 4

Kết quả:

144

Giải thích:

  • Dãy số là 2, 3, 4 .
  • LCM(2, 3, 4) = 12 .
  • Cần tính 12^2 \pmod{1000} .
  • 12^2 = 144 . Kết quả: 144 \pmod{1000} = 144 .

Giới hạn:

  • 1 \le N \le 10^5
  • 0 \le K \le 10^{18}
  • 2 \le M \le 10^9 + 7
  • 1 \le A_i \le 10^6