USACO 2018 - Team Tic Tac Toe

Xem PDF



Dạng bài
Ngôn ngữ cho phép
Assembly, Awk, C, C#, C++, Clang, Cobol, D, Groovy, Haskell, JS, Java, Kotlin, Lua, Node JS, OCaml, ObjectiveC, PHP, Pascal, Perl, Prolog, Pypy, Pypy 3, Python, Ruby, Rust, Scala, Scratch, Swift
Điểm: 800 (p) Thời gian: 4.0s Bộ nhớ: 512M Input: bàn phím Output: màn hình

Bác nông dân John sở hữu 26 cô bò. Thật tình cờ, tên của chúng bắt đầu bằng các chữ cái khác nhau trong bảng chữ cái, nên ông thường gọi mỗi cô bò bằng chữ cái đầu trong tên của cô ấy — một ký tự thuộc khoảng \(A \ldots Z\).

Gần đây, đàn bò rất say mê trò cờ ca-rô, nhưng vì không thích việc mỗi lần chỉ có hai cô bò được chơi nên chúng đã sáng tạo ra một biến thể cho phép nhiều cô bò cùng chơi! Tương tự cờ ca-rô thông thường, trò chơi diễn ra trên một bảng \(3 \times 3\). Tuy nhiên, thay vì chỉ dùng X và O, mỗi ô được đánh dấu bằng một ký tự duy nhất thuộc khoảng \(A \ldots Z\), biểu thị chữ cái đầu của cô bò chiếm ô đó.

Một bảng đấu có thể trông như sau:

COW
XXO
ABC

Đàn bò điền đủ cả chín ô rồi mới bối rối không biết phải xác định ai thắng cuộc. Rõ ràng, giống như trong cờ ca-rô thông thường, nếu một cô bò chiếm trọn một hàng, một cột hoặc một đường chéo thì cô ấy có thể tự mình tuyên bố chiến thắng. Tuy nhiên, vì đàn bò cho rằng điều này khó xảy ra khi có nhiều người chơi hơn, chúng quyết định cho phép lập đội gồm hai cô bò. Một đội hai cô bò có thể tuyên bố chiến thắng nếu một hàng, một cột hoặc một đường chéo chỉ gồm các ký tự của hai cô bò trong đội, đồng thời các ký tự của cả hai cô bò đều xuất hiện trên hàng, cột hoặc đường chéo đó, chứ không chỉ ký tự của một cô.

Hãy giúp đàn bò xác định có bao nhiêu cá nhân và bao nhiêu đội hai cô bò có thể tuyên bố chiến thắng. Lưu ý rằng cùng một ô trên bảng có thể được sử dụng trong nhiều cách tuyên bố chiến thắng khác nhau.

Dữ liệu vào

Dữ liệu vào gồm ba dòng, mỗi dòng chứa ba ký tự thuộc khoảng \(A \ldots Z\).

Dữ liệu ra

Dữ liệu ra gồm hai dòng. Trên dòng đầu tiên, in số cô bò có thể tự mình tuyên bố chiến thắng. Trên dòng thứ hai, in số đội gồm hai cô bò có thể tuyên bố chiến thắng.

Ví dụ

Ví dụ 1

Input
COW
XXO
ABC
Output
0
2
Giải thích

Trong ví dụ này, không cô bò nào có thể tự mình tuyên bố chiến thắng. Tuy nhiên, nếu hai cô bò C và X lập đội, họ có thể thắng nhờ đường chéo C-X-C. Ngoài ra, nếu hai cô bò X và O lập đội, họ có thể thắng nhờ hàng giữa.

Nguồn

USACO 2018 US Open Contest, Bronze — Team Tic Tac Toe

Tác giả bài toán: Brian Dean.

Bình luận

Mới nhất
Tải bình luận...

Không có bình luận nào.

Kỳ thi: