Điểm:
100 (p)
Thời gian:
1.0s
Bộ nhớ:
1023M
Input:
bàn phím
Output:
màn hình
Cho hai số nguyên \(x\) và \(n\), hãy tính lũy thừa \(x^n\).
Input
- Là hai số nguyên \(x\) và \(n\) cách nhau một khoảng trắng (\(1 \le x \le 1000, 1 \le n \le 10^{18}\))
Output
- Là 4 số cuối của lũy thừa \(x^n\) (\(x^n \mod\ 10^4\))
Example
Test 1
Input
2 3
Output
8
Test 2
Input
3 2
Output
9
Bình luận
Cho mình hỏi với ạ
\(4\) chữ số cuối của \(a^n\) có cần phải viết các số chữ số \(0\) ở đầu không?
Ví dụ:
Input
9 9
Thì có đáp án là
Output
0489
Hay
Output
489
Lưu ý: \(9^9 = 387420489\)
x, n=map(int,input().split())
m=1000000000
r = 1
while n:
if n % 2: r = r * x % m
x = x * x % m
n //= 2
print(r%(10**4))
test sai hả bạn
Hint
Lũy thừa nhị phân
VD trong c++: https://ideone.com/4z0hIT
:v
summary
code n/2 = 8
summary
detail
7 bình luận nữa