trang chủ / đề bài / cslstone

Trò chơi sỏi khác biệt

Đề bài

Mô tả

Có n đống sỏi, đống thứ i chứa ai viên sỏi. Hai người chơi lần lượt thực hiện nước đi, người thứ nhất đi trước.

Trong mỗi lượt, người chơi phải chọn một đống khác rỗng và lấy đi đúng một viên sỏi từ đống đó.

Một người chơi thua nếu:

  • đến lượt mình mà tất cả các đống đều đã rỗng (không còn nước đi hợp lệ), hoặc
  • sau khi người đó lấy viên sỏi, tồn tại hai đống có cùng số viên sỏi (kể cả khi cả hai đống đều rỗng).

Lưu ý rằng ngay ở trạng thái ban đầu vẫn có thể có hai đống bằng nhau; điều kiện chỉ áp dụng cho trạng thái sau mỗi nước đi.

Giả sử cả hai người chơi đều đi tối ưu, hãy xác định ai là người thắng cuộc.

Dữ liệu vào

  • Dòng đầu chứa số nguyên n là số đống sỏi.
  • Dòng thứ hai chứa n số nguyên a1,a2,…,an là số viên sỏi của từng đống.

Dữ liệu ra

In ra FIRST nếu người đi trước thắng, hoặc SECOND nếu người đi sau thắng.

Ràng buộc

  • 1≤n≤105
  • 0≤ai≤109

Ví dụ

Input Output Giải thích
1
0
SECOND Đống duy nhất đã rỗng nên người đi trước không có nước đi hợp lệ và thua ngay lập tức.
2
1 0
SECOND Người đi trước buộc phải lấy viên sỏi của đống thứ nhất, tạo ra trạng thái [0,0] có hai đống bằng nhau nên thua.
2
2 2
FIRST Trạng thái ban đầu có hai đống bằng nhau nhưng vẫn hợp lệ. Người đi trước lấy một viên, được [1,2]. Người đi sau buộc phải lấy ở đống 1 viên (lấy ở đống 2 viên sẽ tạo ra [1,1] và thua ngay), được [0,2]. Trò chơi kết thúc ở [0,1] sau 3 nước, khi đó người đi sau hết nước đi.
3
1 3 2
FIRST Mỗi lượt chỉ có đúng một nước đi không thua ngay; trò chơi kết thúc ở trạng thái [0,1,2] sau 3 nước đi, khi đó đến lượt người đi sau và người này không còn nước đi.

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