Điều hướng chính

Nhắn tin NQ Coding

Ngôn ngữ

Phím tắt

/
Chuyển đến ô tìm bài
g p
Đi đến bài tập
g c
Đi đến kỳ thi
g u
Đi đến người dùng
?
Mở trợ giúp phím tắt

Bài tập luythuanhanh

Luỹ thừa nhanh

Dễ Đệ quySố học

  • 100 Điểm
  • 1.0s Thời gian
  • 500M Bộ nhớ
  • 100% Tỉ lệ AC
  • 1 Số AC

Cho hai số nguyên dương \(x\) và \(n\). Hãy tính \(x^n\) theo modulo \(10^9 + 7\), bằng một hàm đệ quy chia đôi số mũ (mỗi lần gọi đệ quy chỉ cần \(O(\log n)\) tầng): \(x^n = (x^{n/2})^2\) khi \(n\) chẵn và \(x^n = x \cdot (x^{\lfloor n/2 \rfloor})^2\) khi \(n\) lẻ.

Input

Một dòng gồm hai số nguyên dương \(x\) và \(n\).

Output

In ra một số nguyên: phần dư của \(x^n\) khi chia cho \(10^9+7\).

Constraints

  • \(1 \le x, n \le 10^9\)

Sample Input 1

5 7

Sample Output 1

78125

Sample Input 2

2 30

Sample Output 2

73741817

Explanation

\(5^7 = 78125\). Còn \(2^{30} = 1073741824\), chia \(10^9+7\) dư \(73741817\).

Bình luận

Chưa có bình luận nào.