Trò chơi 1-2-K

Đề bài

Mô tả

Alice và Bob chơi một trò chơi. Có một dải giấy gồm n+1 ô được đánh số từ trái sang phải bắt đầu từ 0. Một quân cờ được đặt tại ô số n (ô ngoài cùng bên phải).

Hai người lần lượt đi, Alice đi trước. Trong mỗi lượt, người chơi phải di chuyển quân cờ sang trái 1, 2 hoặc k ô (nghĩa là nếu quân cờ đang ở ô i thì có thể chuyển nó tới ô i−1, i−2 hoặc i−k). Quân cờ không được vượt ra ngoài biên trái của dải giấy: chẳng hạn không thể đi k ô nếu ô hiện tại có số i<k. Người nào không thể thực hiện nước đi nào (quân cờ đang ở ô 0) sẽ thua.

Cả hai người chơi tối ưu. Hãy xác định ai là người thắng trong mỗi ván.

Có T ván độc lập cần trả lời.

Dữ liệu vào

  • Dòng đầu chứa số nguyên T: số ván chơi.
  • T dòng tiếp theo, mỗi dòng chứa hai số nguyên n và k.

Dữ liệu ra

Với mỗi ván, in ra Alice nếu Alice thắng, ngược lại in ra Bob.

Ràng buộc

  • 1≤T≤100
  • 0≤n≤109
  • 3≤k≤109

Ví dụ

Input Output Giải thích
4
0 3
3 3
3 4
4 4
Bob
Alice
Bob
Alice
Ván 1: quân cờ đã ở ô 0, Alice không đi được nên thua. Ván 2: Alice đi thẳng k=3 ô về ô 0, Bob thua. Ván 4: Alice đi 1 ô về ô 3, dù Bob làm gì Alice cũng thắng.
1
25 6
Alice k=6 chia hết cho 3, chu kỳ là k+1=7; 25mod7=4 không chia hết cho 3 nên Alice thắng.
1
24 6
Bob 24mod7=3 chia hết cho 3 và khác k, nên Bob thắng.

Bình luận

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

gnatmake 12.2.0 a68g 3.1.2 nasm 2.16.1 as_x64 2.47 awk 1.3.4 gcc 16.2.0 dotnet 10.0.402 g++ 16.2.0 g++-themis 16.2.0 g++17 16.2.0 g++20 16.2.0 g++23 16.2.0 clang++ 22.1.8 dmd 2.113.0 dart 3.13.6 gforth 0.7.3 gfortran 15.3.0 go 1.27.3 groovyc 5.1.3 javac 26.0.2.1 node 26.12.1 julia 1.13.2 kotlinc 2.4.21 lean 4.35.0 sbcl 2.2.9 lua 5.5.1 nim 2.2.12 fpc 3.2.2 fpc-themis 3.2.2 perl 5.42.3 php 8.5.12 pike 8.0 swipl 9.0.4 pypy3 7.3.23 python3 3.15.1 racket 8.7 ruby 4.0.8 rustc 1.99.1 csc 5.3.0 ctoj-scratch 0.0.1 sed 4.9 swiftc 6.4.1 tclsh 8.6 bun 1.4.4 deno 2.9.8 v 0.5.2 zig 0.17.0