输入格式
第一行一个整数 n,表示排列的长度。
第二行 n 个用空格分隔的整数,为 1 到 n 组成的某个排列。
输出格式
如果上一个排列存在,则输出;否则输出"ERROR"。
输出时每行末尾的多余空格,不影响答案正确性
样例输入
4
2 1 3 4
样例输出
1 4 3 2
思路:直接使用STL
#include <iostream>
#include <algorithm>
using namespace std;
int arr[15];
int main() {
int n;
// stringstream ss;
cin>>n;
for (int i= 0; i < n; i++ ) {
cin>>arr[i];
}
int t = prev_permutation(arr,arr+n);
if (t == 0) {
cout<<"ERROR\n";
} else {
for (int i= 0; i < n; i++ ) {
cout<<arr[i]<<" ";
}
}
return 0;
}