Hoán vị của Petr
Đề bài
Mô tả
Có hai cách sinh một hoán vị ngẫu nhiên độ dài . Cả hai đều bắt đầu từ hoán vị đơn vị , sau đó lặp lại nhiều lần thao tác: chọn ngẫu nhiên đều một cặp vị trí khác nhau và đổi chỗ hai phần tử ở hai vị trí đó.
- Cách của Petr thực hiện đúng lần đổi chỗ.
- Cách của Alex thực hiện đúng lần đổi chỗ.
Cho một hoán vị được sinh theo một trong hai cách trên, hãy cho biết nó được sinh bằng cách nào.
Mọi test (trừ các ví dụ) được tạo như sau: chọn , chọn ngẫu nhiên một trong hai cách, rồi sinh hoán vị bằng cách đó. Với các ví dụ, ràng buộc không được đảm bảo, nhưng chương trình vẫn phải in đúng đáp án.
Dữ liệu vào
- Dòng đầu tiên chứa số nguyên .
- Dòng thứ hai chứa số nguyên phân biệt trong đoạn , là hoán vị cần xét.
Dữ liệu ra
In Petr nếu hoán vị được sinh theo cách của Petr, ngược lại in Um_nik nếu nó được sinh theo cách của Alex.
Ràng buộc
Ví dụ
| Input | Output | Giải thích |
|---|---|---|
| 5 2 4 5 1 3 |
Petr | Hoán vị này có thể nhận được từ hoán vị đơn vị sau đúng lần đổi chỗ, ví dụ minh hoạ nên . |
| 5 2 3 1 4 5 |
Um_nik | Hoán vị này có thể nhận được từ hoán vị đơn vị sau đúng lần đổi chỗ. |
Bình luận