Trò chơi ma trận

Đề bài

Mô tả

Ashish và Vivek chơi một trò chơi trên ma trận n hàng và m cột, luân phiên nhau chiếm ô. Ô chưa bị chiếm được biểu diễn bằng 0, ô đã bị chiếm được biểu diễn bằng 1. Trạng thái ban đầu của ma trận có thể có sẵn một số ô đã bị chiếm.

Trong mỗi lượt, người chơi phải chiếm một ô. Một ô có thể được chiếm nếu nó chưa bị chiếm không nằm cùng hàng hoặc cùng cột với bất kỳ ô nào đã bị chiếm (bao gồm cả các ô đã có sẵn từ đầu). Khi một người không thể đi được nữa, người đó thua.

Ashish đi trước. Cả hai đều chơi tối ưu. Hãy xác định ai là người thắng.

Dữ liệu vào

  • Dòng đầu tiên chứa số nguyên t — số bộ dữ liệu.
  • Mỗi bộ dữ liệu bắt đầu bằng dòng chứa hai số nguyên n, m.
  • Tiếp theo là n dòng, mỗi dòng chứa m số nguyên ai,j{0,1} mô tả ma trận.

Dữ liệu ra

Với mỗi bộ dữ liệu, in ra Ashish nếu Ashish thắng, ngược lại in ra Vivek.

Ràng buộc

  • 1t50
  • 1n,m50
  • ai,j{0,1}

Ví dụ

Input Output Giải thích
4
2 2
0 0
0 0
2 2
0 0
0 1
2 3
1 0 1
1 1 0
3 3
1 0 0
0 0 0
1 0 0
Vivek
Ashish
Vivek
Ashish
Bộ 1: Ashish chiếm (1,1), Vivek chiếm (2,2); Ashish không còn nước đi nên thua. Bộ 2: Chỉ có thể chiếm (1,1); sau đó Vivek hết nước đi. Bộ 3: Mọi hàng đều đã có ô bị chiếm, Ashish không thể đi ngay lần đầu. Bộ 4: Ashish chiếm (2,3), Vivek không còn nước đi.
2
1 1
0
1 1
1
Ashish
Vivek
Bộ 1: Ashish chiếm ô (1,1), sau đó Vivek không còn nước đi. Bộ 2: Ashish không có nước đi ngay từ đầu.

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 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