Giả sử người muốn mua sản phẩm giá x. Mỗi ngày giá tăng x lần giá ngày trước. Tìm giá sau y ngày. Nếu giá quá lớn, trả về modulo 10^9 + 7. Input là danh sách cặp (x, y).
Ví dụ: nums = [(5,2), (6,8), (2,12), ...], kết quả: 25, 1679616, 4096, 754504594, 32955023.
Giải thuật
- Với mỗi cặp
(x, y)trongnums:- Tính
pow(x, y, 1000000007)
- Tính
Ví dụ
def solve(nums):
for i in range(len(nums)):
x, y = nums[i][0], nums[i][1]
print(pow(x, y, 1000000007))
solve([(5, 2), (6, 8), (2, 12),
(2722764242812953792238894584, 3486705296791319646759756475),
(1505449742164712795427942455727527, 61649494321438487460747056421546274264)])
Input
[(5, 2),(6, 8),(2, 12), (2722764242812953792238894584, 3486705296791319646759756475), (1505449742164712795427942455727527, 61649494321438487460747056421546274264)]
Output
25 1679616 4096 754504594 32955023