#960. [蓝桥杯]求新序列中的最大序列
[蓝桥杯]求新序列中的最大序列
题目描述
给定一个正整数n,请将n中的每位数字重新排列并组成一个新数,要求新数的值要小于n,请找出所有符合要求的新数中最大的那个正整数,如果不存
在这样的正整数,则输出-1。
例1:n=312,312中每位上的数字依次是3、1、2,重新排列组成的新数有321、231、213、132、123,新数中小于312的有231、213、132、123,其中符合要求的最大正整数是231;
例2:n=123,123中每位上的数字依次是1、2、3,重新排列组成的新数有312、321、231、213、132,新数中不存在小于123的正整数,故输出-1。
输入描述
输入一个正整数 n(1 ≤ n < 2的63次方)
输出描述
输出一个正整数,表示符合要求的最大正整数
样例
312
231
评分标准
8分:能正确输出第一组数据; 8分:能正确输出第二组数据; 8分:能正确输出第三组数据; 8分:能正确输出第四组数据; 8分:能正确输出第五组数据; 8分:能正确输出第六组数据; 8分:能正确输出第七组数据; 8分:能正确输出第八组数据; 8分:能正确输出第九组数据; 8分:能正确输出第十组数据。