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

Chương trình tìm số coin tối đa Player 1 có được bằng Python

Có 3n đống coin, 3 người chơi: P1 chọn 3 đống, P2 lấy đống max, P1 lấy đống max tiếp theo, P3 lấy đống còn lại. Lặp đến hết. Tìm max coin P1 có được.

Ví dụ: piles=[2,4,1,2,7,8] → 9 (chọn (2,7,8) P1 lấy 7; chọn (1,2,4) P1 lấy 2).

Thuật toán

  • Sắp xếp piles tăng dần
  • While piles không rỗng:
    • ans += piles[-2] (phần tử倒数 thứ 2)
    • Xóa piles[-2], piles[-1], piles[0]
  • Return ans

Code Python


def solve(piles):
    piles.sort()
    ans = 0
    while len(piles) != 0:
        ans += piles[-2]
        del piles[-2]
        del piles[-1]
        del piles[0]
    return ans

piles = [2,4,1,2,7,8]
print(solve(piles))

Input

[2,4,1,2,7,8]

Output

9