Khôi phục hoán vị
Đề bài
Mô tả
Cho một dãy số gồm các số nguyên đôi một khác nhau. Hãy tìm hoán vị của các số từ đến có thứ tự từ điển nhỏ nhất sao cho:
hoặc xác định rằng không tồn tại hoán vị nào thỏa mãn.
Nói cách khác, ta chia dãy thành cặp liên tiếp ; giá trị nhỏ hơn trong cặp thứ phải đúng bằng .
Dữ liệu vào
- Dòng đầu tiên chứa số nguyên — số lượng bộ dữ liệu.
- Với mỗi bộ dữ liệu:
- Dòng đầu chứa số nguyên — số phần tử của dãy .
- Dòng thứ hai chứa số nguyên khác nhau .
Dữ liệu ra
Với mỗi bộ dữ liệu, nếu không tồn tại hoán vị thỏa mãn, in ra .
Ngược lại, in ra số nguyên — hoán vị có thứ tự từ điển nhỏ nhất thỏa mãn yêu cầu.
Ràng buộc
- , các đôi một khác nhau.
- Tổng của trên tất cả các bộ dữ liệu không vượt quá .
Ví dụ
| Input | Output | Giải thích |
|---|---|---|
| 5 1 1 2 4 1 3 4 1 3 4 2 3 4 5 5 1 5 7 2 8 |
1 2 -1 4 5 1 2 3 6 -1 1 3 5 6 7 9 2 4 8 10 |
Bộ 1: cặp có min bằng . Bộ 2: cần một số lớn hơn nhưng nên không có . Bộ 3: ghép với , với , với . Bộ 5: mỗi ghép với số nhỏ nhất còn lại lớn hơn nó. |
Bình luận