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

In số ký tự tối đa bằng copy-paste trong n bước trong Python


Cho n phép toán: (1) gõ 'x', (2) copy all, (3) paste. Tối đa số ký tự sau n bước.

Ví dụ: n = 12 → 81.

Quan sát: Chuỗi thao tác tối ưu theo chu kỳ 3: Copy, Paste, Paste (nhân 3), hoặc các biến thể. Code mô phỏng quy luật này.

Ví dụ triển khai

class Solution:
    def solve(self, n):
        if n <= 4:
            return n
        v = 6   # giá trị sau 5 bước
        x = 3   # lượng paste hiện tại
        i = 5
        j = 0
        while i != n:
            v += x
            i += 1
            j += 1
            if j % 3 == 0:
                x = int(x * 1.5)
            elif j % 3 == 1:
                pass
            else:
                x *= 2
        return v

ob = Solution()
n = 12
print(ob.solve(n))  # 81

Đầu vào

12

Đầu ra

81