Problem hidden
|This problem was hidden by Editorial Board member probably because it has incorrect language|version or invalid test data, or description of the problem is not clear.|

HVTTOATAU2 - Di chuyển toa tàu 2

Hình dưới là cơ cấu của một đường tàu tại một ga xe lửa:

Ban đầu ở đường ray A có chứa các toa tàu được đánh số thứ tự từ 1 đến n theo thứ tự từ trái qua phải, người ta muốn chuyển các toa đó sang ray C để có được một thứ tự mới là một hoán vị của (1, 2, …, n) theo quy tắc: chỉ được đưa các toa tàu chạy theo đường ray theo hướng mũi tên, có thể dùng đường ray B để lưu tạm các toa tàu trong quá trình di chuyển.

Cho biết hoán vị cần có, hãy tìm phương án di chuyển ít nhất các toa tàu trên đường ray.

Input

- Dòng 1: Một số nguyên dương n (n ≤ 105)

- Dòng 2: n số nguyên là hoán vị của các số từ 1 đến n

Output

- Nếu không có phương án thì đưa ra thông báo là NO

- Nếu có phương án thì:

          + Dòng 1 đưa ra thông báo YES

          + Các dòng tiếp theo đưa ra các bước di chuyển ít nhất các toa tàu.

Example

Input:

4

1 4 2 3 Output:

YES

A->C

A->B

A->B

A->C

B->C

B->C

Được gửi lên bởi:Vương Trung Hiếu Nghĩa
Ngày:2018-11-11
Thời gian chạy:1s
Giới hạn mã nguồn:50000B
Memory limit:1536MB
Cluster: Cube (Intel G860)
Ngôn ngữ cho phép:C++ 4.3.2 CPP CPP14 CPP14-CLANG PAS-GPC PAS-FPC

© Spoj.com. All Rights Reserved. Spoj uses Sphere Engine™ © by Sphere Research Labs.