R25_LS01GAME
Một trò chơi trên một bảng chữ kích thước \(3×n\) . Các dòng của bảng được đánh số từ \(1\) đến \(3\) , từ trên xuống dưới, các cột của bảng được đánh số từ \(1\) đến \(n\), từ trái qua phải. Ô nằm trên giao của dòng \(i (1≤i≤3)\) và cột \(j (1≤j≤n)\) được gọi là ô \((i,j)\). Mỗi ô của lưới chứa một kí tự từ ký tự \(a\) đến ký tự \(z\).
Bắt đầu chơi, người chơi sẽ thông báo chọn một ô \((i,j)\) là ô xuất phát và nhận được xâu S gồm một kí tự là kí tự ở ô \((i,j)\) . Mỗi lượt, người chơi có thể thông báo kết thúc việc di chuyển hoặc chọn một ô chung cạnh hoặc chung đỉnh ở cột tiếp theo bên phải để di chuyển. Di chuyển đến ô nào, kí tự ở ô đó sẽ được thêm vào cuối của xâu \(S\).
Yêu cầu: Cho bảng chữ, hãy tìm cách chơi để nhận được xâu là xâu đối xứng dài nhất.
Input
Dòng đầu chứa số nguyên \(n (n≤1000)\);
Ba dòng sau, mỗi dòng chứa một xâu gồm \(n\) ký tự từ ký tự từ ký tự \(a\) đến ký tự \(z\) mô tả bảng chữ.
Output
- Gồm một dòng chứa một số là độ dài xâuS là xâu đối xứng dài nhất tìm được.
Ràng buộc
Subtask 1 (20%): \(n≤10;\)
Subtask 2 (80%): \(n≤1000.\)
Sample Input
10 3 3
1 10 9 8 2 3 4 5 6 7
1 3 2
Sample Output
8 10 9
Comments