Khôi phục hoán vị
Đề bài
Mô tả
Vasya viết ra một hoán vị của các số nguyên từ đến , nghĩa là với mọi và tất cả đôi một khác nhau.
Sau đó, với mỗi vị trí bạn ấy ghi thêm một số , được định nghĩa là chỉ số nhỏ nhất thoả mãn và . Nếu không tồn tại như vậy thì .
Trên đường về nhà trời mưa làm ướt quyển vở. Toàn bộ hoán vị và một vài giá trị đã không còn đọc được nữa. Những giá trị bị mất được ghi lại là .
Cho dãy , hãy khôi phục một hoán vị bất kỳ sao cho mọi giá trị khác đều đúng theo định nghĩa trên. Các vị trí có không đặt ra ràng buộc nào.
Dữ liệu vào
- Dòng đầu chứa số nguyên : số lượng bộ dữ liệu.
- Tiếp theo là dòng mô tả các bộ dữ liệu, mỗi bộ gồm hai dòng:
- Dòng thứ nhất chứa số nguyên : độ dài hoán vị.
- Dòng thứ hai chứa số nguyên .
Dữ liệu ra
In ra dòng, dòng thứ là đáp án cho bộ dữ liệu thứ .
Nếu không tồn tại hoán vị nào thoả mãn, in ra . Ngược lại, in ra số nguyên đôi một khác nhau . Nếu có nhiều đáp án, in ra một đáp án bất kỳ.
Ràng buộc
- hoặc
- Tổng trên tất cả các bộ dữ liệu không vượt quá
Ví dụ
| Input | Output | Giải thích |
|---|---|---|
| 3 3 2 3 4 2 3 3 3 -1 -1 -1 |
1 2 3 2 1 1 2 3 |
Bộ 1: với thì mỗi phần tử đều nhỏ hơn phần tử kế tiếp nên . Đây cũng là hoán vị duy nhất thoả mãn. Bộ 2: buộc , nên . Bộ 3: mọi giá trị đều bị mất nên hoán vị nào cũng hợp lệ. |
| 3 3 3 4 -1 1 2 4 4 -1 4 5 |
-1 1 3 1 2 4 |
Bộ 1: buộc , còn buộc . Hai điều này mâu thuẫn nên đáp án là . Bộ 2: chỉ có một hoán vị độ dài . Bộ 3: buộc , còn buộc . Hoán vị cũng được chấp nhận. |
Bình luận