织梦如何制作静态网站模板,自己怎么做电商,wordpress 评论显示ip,市场调研报告3000字范文题目描述
给定一个正整数 n#xff0c;请将 n 中的每位数字重新排列并组成一个新数#xff0c;要求新数的值要小于 n#xff0c;请找出所有
符合要求的新数中最大的那个正整数#xff0c;如果不存在这样的正整数#xff0c;则输出 -1。例 1#xff1a;n 312#xff0…题目描述
给定一个正整数 n请将 n 中的每位数字重新排列并组成一个新数要求新数的值要小于 n请找出所有
符合要求的新数中最大的那个正整数如果不存在这样的正整数则输出 -1。例 1n 312312 中每位上的数字依次是 3、1、2重新排列组成的新数有 321、231、213、132、123新数中小于 312 的有 231、213、132、123其中符合要求的最大正整数是 231例 2n 123123 中每位上的数字依次是 1、2、3重新排列组成的新数有 312、321、231、213、132新数中不存在小于 123 的正整数故输出-1 输入
输入一个正整数 n1≤n263
输出
输出一个正整数表示符合要求的最大正整数
样例输入
312
样例输出
231 #includebits/stdc.h
using namespace std;
bool cmp(char a,int b){return ab;
}
int main(){char a[30];cina;int nstrlen(a),f0,k,kk;for(int i0;in-1;i){for(int ji;jn-1;j){if(a[j]a[j1]){ij;kj1;f1;break;}}}char maxn0;if(f0)cout-1;else{for(int ik;in-1;i){if(a[i]a[k-1]a[i]maxn)maxna[i],kki;}swap(a[kk],a[k-1]);sort(ak,an,cmp);couta;}return 0;
}