Cho số tự nhiên \(A\) có \(N (1<N<=10^3)\) chữ số. Số phía sau của một số \(A\) là số nhỏ nhất nhận được từ hoán vị các chữ số của số \(A\) và lớn hơn số \(A\). Cho số \(A\) hãy tìm số phía sau số \(A.\)
Dữ liệu:
- Dòng đầu tiên là giá trị \(N\).
- Từ dòng thứ hai trở đi là các chữ số của \(A\).
Kết quả:
- Nếu có nghiệm thì ghi số phía sau của số \(A\).
- Nếu vô nghiệm thì ghi chữ số \(0\).
Ví dụ:
Input
6
526431
Output
531246
Ràng buộc:
- Có 30% số test ứng với 30% số điểm của bài có \(1<N<=1000\);
- Có 30% số test ứng với 30% số điểm của bài có \(1000<N<=10^6\);
- Có 40% số test ứng với 40% số điểm của bài có \(10^6<N<=10^9.\)