Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Chương trình Python tìm giá sản phẩm sau số ngày cho trước

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

  1. Với mỗi cặp (x, y) trong nums:
    • Tính pow(x, y, 1000000007)

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