Có 3 tuyến đường 1 tuyến đường bên trái, 1 tuyến đường bên phải và 1 tuyến đường trung gian. Nhiệm vụ của bạn là sắp xếp các xe với thứ tự cho trước bên tuyến đường bên trái sang tuyến đường bên phải theo thứ tự giảm dần.
Đôi khi chúng ta không thể sắp xếp được theo như yêu cầu đề bài, vì vậy hãy in ra "yes" nếu có thể và "no" nếu không thể.
Constrain:
Tuyến đường rất bé chỉ có 1 xe đi vừa, các xe đã đi ra khỏi tuyến đường bên trái sẽ không được quay đầu lại.
Tuyến đường bên trái chứa tối đa 1000 xe.
Minh Họa:
Đôi khi chúng ta không thể sắp xếp được theo như yêu cầu đề bài, vì vậy hãy in ra "yes" nếu có thể và "no" nếu không thể.
Constrain:
Tuyến đường rất bé chỉ có 1 xe đi vừa, các xe đã đi ra khỏi tuyến đường bên trái sẽ không được quay đầu lại.
Tuyến đường bên trái chứa tối đa 1000 xe.
Minh Họa:
Các xe sẽ được sắp xếp như sau:
Example
Hướng dẫn:
Dùng 2 stack, 1 stack chứa các xe và 1 stack trung gian.
Tìm xe có giá trị nhỏ nhất bắt đầu từ 1, trong quá trình lấy xe 1 ra thì cho các xe còn lại vào stack trung gian.
Sau khi lấy được xe đầu tiên thì kiểm tra:
Dùng 2 stack, 1 stack chứa các xe và 1 stack trung gian.
Tìm xe có giá trị nhỏ nhất bắt đầu từ 1, trong quá trình lấy xe 1 ra thì cho các xe còn lại vào stack trung gian.
Sau khi lấy được xe đầu tiên thì kiểm tra:
- Kiểm tra xem giá trị đỉnh hiện tại có là giá trị xe đang cần tìm hay k? nếu có thì hãy pop nó ra khỏi stack.
- Nếu sai thì kiểm tra giá trị này có phải là đỉnh stack trung gian k?