Trở về tuổi thơ
View as PDF Time limit: 1.0s , Memory limit: 256M , Points: 100 (partial)
Fabian trở về tuổi thơ với trò chơi ghép hình, mỗi mảnh có ghi một giá trị và thuộc một trong loại sau:
Bộ ghép hình gồm tổng cộng mảnh, trong đó có đúng một mảnh loại
hoặc
và có đúng một mảnh loại
hoặc
. Fabian muốn ghép toàn bộ các mảnh ghép với nhau thành một hàng ngang, bắt đầu từ mảnh
hoặc
và kết thúc bằng mảnh
hoặc
.
Bạn hãy giúp Fabian xác định cách ghép các mảnh sao cho giá trị của chúng khi đọc từ trái sang phải có thứ tự từ điển nhỏ nhất.
Input
- Dòng đầu tiên chứa số nguyên
.
dòng tiếp theo, dòng thứ
chứa hai số nguyên
và
lần lượt là loại mảnh và giá trị ghi trên mảnh.
Output
- Nếu không tồn tại cách ghép, in ra
. Ngược lại, in ra dãy giá trị mảnh ghép từ trái sang phải có thứ tự từ điển nhỏ nhất.
Samples
Sample Input 1
5
1 5
2 7
2 3
8 4
6 1
Sample Output 1
1 3 7 5 4
Sample Input 2
3
5 1
7 2
4 3
Sample Output 2
1 3 2
Sample Input 3
5
2 5
2 7
2 3
8 4
6 1
Sample Output 3
-1
Scoring
- Subtask
với
số điểm:
- Subtask
với
số điểm:
- Subtask
với
số điểm: Không có mảnh loại
và
- Subtask
với
số điểm: Không còn ràng buộc gì thêm
Clarification
Trong ví dụ đầu tiên, chỉ có hai cách ghép mảnh hợp lệ như sau:
Cách ghép thứ hai có thứ tự từ điển nhỏ hơn cách ghép đầu tiên.
Comments