USACO 2019 - Cow Evolution

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: 1200 (p) Thời gian: 4.0s Bộ nhớ: 512M Input: bàn phím Output: màn hình

Năm nay là năm 3019, và trong một nghìn năm qua đã diễn ra một lượng tiến hóa đáng kinh ngạc ở loài bò, tạo nên những con bò với đủ loại đặc điểm thú vị.

Lịch sử tiến hóa của loài bò có thể được mô tả bằng một cây, bắt đầu tại gốc với một con bò tổ tiên cơ bản không có đặc điểm đặc biệt nào. Ở mỗi tầng hậu duệ trong cây, hoặc tất cả các con bò đều tiến hóa thêm một đặc điểm mới (chẳng hạn khả năng thở ra lửa trong hình dưới đây, nơi tất cả những con bò có đốm cuối cùng đều thở ra lửa), hoặc quần thể bò phân nhánh, trong đó một số con tiến hóa thêm một đặc điểm mới (ví dụ như biết bay) còn một số thì không.

Các lá ở đáy cây biểu thị tất cả những quần thể con hình thành vào năm 3019. Không có hai lá (quần thể con) nào chứa các tập đặc điểm giống hệt nhau. Ví dụ, quần thể con số 1 gồm những con bò không có đặc điểm đặc biệt nào, còn quần thể con số 3 gồm những con bò biết bay và có khả năng thần giao cách cảm. Trái lại, quần thể con số 2 có những con bò biết bay nhưng không có khả năng thần giao cách cảm. Quần thể con số 3 là duy nhất với tổ hợp bò vừa biết bay vừa có khả năng thần giao cách cảm.

Một cây tiến hóa như trên được gọi là "hợp lệ" nếu mỗi đặc điểm mới tiến hóa chỉ bắt nguồn trên đúng một cạnh của cây (tức là nó xuất hiện tại một thời điểm duy nhất trong lịch sử). Ví dụ, một cây sẽ không hợp lệ nếu các đốm tiến hóa xuất hiện trên hai nhánh riêng biệt. Cho trước mô tả về các quần thể con của bò vào năm 3019, hãy xác định liệu chúng có thể được mô tả bằng một cây tiến hóa hợp lệ hay không.

Dữ liệu vào

Dòng đầu tiên chứa số quần thể con \(N\) (\(2 \leq N \leq 25\)). Mỗi dòng trong \(N\) dòng tiếp theo mô tả một quần thể con. Dòng bắt đầu bằng một số nguyên \(K\) (\(0 \leq K \leq 25\)), sau đó là \(K\) đặc điểm có ở tất cả những con bò trong quần thể con đó. Mỗi đặc điểm là một xâu gồm không quá 20 ký tự chữ thường (a..z). Không có hai quần thể con nào có các đặc điểm giống hệt nhau.

Dữ liệu ra

In ra yes nếu có thể lập một cây tiến hóa hợp lệ giải thích nguồn gốc của các quần thể con này, và in ra no nếu không thể.

Ví dụ

Ví dụ 1

Input
4
2 spots firebreathing
0
1 flying
2 telepathic flying
Output
yes
Giải thích

Dữ liệu vào của ví dụ này tương ứng với cây hợp lệ trong sơ đồ ở trên.

Nguồn

USACO 2019 US Open Contest, Bronze — Cow Evolution

Tác giả: 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: