Hướng dẫn giải của Clue Contest 05 - Bốc kẹo


Chỉ dùng lời giải này khi không có ý tưởng, và đừng copy-paste code từ lời giải này. Hãy tôn trọng người ra đề và người viết lời giải.
Nộp một lời giải chính thức trước khi tự giải là một hành động có thể bị ban.

Tác giả: duong3982, noodles0428

Xét trạng thái cả hai túi kẹo đều có chẵn viên kẹo, và đang đến lượt của ~A~.

Trường hợp 1: Hai túi đều hết kẹo.

Lúc này, đương nhiên ~A~ thua.

Trường hợp 2: Chỉ một túi có kẹo.

Lúc này, ~A~ chỉ có thể bốc một viên kẹo từ túi đó, và ~B~ cũng vậy. Trạng thái được lặp lại, với hai túi đều có chẵn viên kẹo, và đang đến lượt của ~A~.

Trường hợp 3: Hai túi đều có kẹo.
  • Nếu ~A~ bốc một viên kẹo từ một trong hai túi, ~B~ sẽ bốc một viên kẹo từ túi đó. Trạng thái được lặp lại, với hai túi đều có chẵn viên kẹo, và đang đến lượt của ~A~.
  • Nếu ~A~ bốc một viên kẹo từ cả hai túi, ~B~ sẽ bốc một viên kẹo từ cả hai túi. Trạng thái được lặp lại, với hai túi đều có chẵn viên kẹo, và đang đến lượt của ~A~.

Vì vậy, nếu ~n~ và ~m~ đều chẵn, ta sẽ đi sau. Ngược lại, ta sẽ đi trước để tạo trạng thái hai túi đều có chẵn viên kẹo.

Code mẫu:

import sys
import math


def main():
    ok = 0
    x, y = map(int, input().split())
    if x % 2 == 0 and y % 2 == 0:
        print(1)
    else:
        print(0)
        if x % 2 == 1 and y % 2 == 1:
            x -= 1 
            y -= 1 
            print("AB")
        elif x % 2 == 1 and y % 2 == 0:
            x -= 1 
            print("A")
        else: 
            y -= 1 
            print("B") 

    while True:
        res = input().strip()
        if res == "A":
            x -= 1 
        elif res == "B":
            y -= 1 
        elif res == "AB": 
            x -= 1 
            y -= 1 
        if res == "-1":
            break 
        if x % 2 == 1 and y % 2 == 1:
            x -= 1 
            y -= 1 
            print("AB")
        elif x % 2 == 1 and y % 2 == 0:
            x -= 1 
            print("A")
        else: 
            y -= 1 
            print("B") 


if __name__ == "__main__":
    main()

Bình luận

Hãy đọc nội quy trước khi bình luận.


Không có bình luận tại thời điểm này.