Vasya và cờ vua

Đề bài

Mô tả

Trên bàn cờ kích thước n×n, ô (1,1) chứa hậu trắng, ô (1,n) chứa hậu đen, tất cả các ô còn lại đều chứa một quân tốt xanh trung lập.

Quân hậu di chuyển theo luật cờ vua thông thường: nó tấn công các ô nằm cùng hàng, cùng cột hoặc cùng đường chéo, miễn là giữa hậu và ô đích không có quân nào khác chắn đường.

Hai người chơi đi luân phiên, người đi quân hậu trắng đi trước. Mỗi lượt người chơi bắt buộc phải bắt một quân nào đó bằng hậu của mình — quân bị bắt có thể là một quân tốt xanh hoặc hậu của đối thủ. Người chơi thua nếu đến lượt mình mà không thể bắt được quân nào, hoặc nếu hậu của mình đã bị đối thủ bắt ở lượt trước.

Cho n, hãy xác định ai sẽ thắng nếu cả hai bên đều chơi tối ưu.

Dữ liệu vào

Một số nguyên duy nhất n — kích thước bàn cờ.

Dữ liệu ra

In ra white nếu người chơi quân trắng thắng, hoặc black nếu người chơi quân đen thắng.

Nếu đáp án là white, in thêm trên một dòng riêng hai số nguyên rc là tọa độ ô mà quân trắng nên đi nước đầu tiên để chắc chắn thắng. Nếu có nhiều ô như vậy, chọn ô có r nhỏ nhất; nếu vẫn còn nhiều ô, chọn ô có c nhỏ nhất.

Ràng buộc

  • 2n109.

Ví dụ

Input Output Giải thích
2 white
1 2
Bàn 2×2. Hậu trắng có thể bắt thẳng hậu đen ở ô (1,2), nên trắng thắng ngay sau nước đi đầu tiên.
3 black Bàn 3×3. Nếu trắng đi vào cột giữa, nó sẽ bị đen bắt ngay lượt sau, nên trắng chỉ có thể bắt tốt ở (2,1). Đen đối xứng bằng cách bắt (2,3). Tiếp tục như vậy đến khi trắng buộc phải đi vào cột giữa và bị đen bắt — đen thắng.
6 white
1 2
Bàn 6×6. Trắng đi (1,2) rồi chơi theo chiến lược đối xứng để buộc đen rơi vào thế thua.
5 black Với n lẻ, đen luôn có thể duy trì thế đối xứng qua cột giữa và 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.46 awk 1.3.4 gcc 16.1.0 csc 6.12.0.200 g++ 16.1.0 g++-themis 16.1.0 g++17 16.1.0 g++20 16.1.0 g++23 16.1.0 clang++ 22.1.6 dmd 2.112.0 dart 3.12.1 gforth 0.7.3 gfortran 12.2.0 go 1.26.3 groovyc 5.0.6 javac 25.0.3 node 26.2.0 kotlinc 2.3.21 sbcl 2.2.9 lua 5.4.8 nim 2.2.10 fpc 3.2.2 fpc-themis 3.2.2 perl 5.36.0 php 8.5.6 pike 8.0 pypy3 7.3.23 python3 3.14.5 racket 8.7 ruby 4.0.5 rustc 1.96.0 csc 5.3.0 ctoj-scratch 0.0.1 sed 4.9 tclsh 8.6 bun 1.3.14 deno 2.8.1 v 0.5.1 zig 0.16.0