输入文件名:select.in
输出文件名:select.out
程序名:select.cpp
问题描述:
给定一个整数N.考虑把N中的数字排列,并且它们都是正整数。例如,对于整数123,有以下六种方式:
12和3
21和3
13和2
31和2
23和1
32和1
这里,分开后的两个数字都是整数,因此不能有前导零。例如,101不能分成1和01.而且结果中的整数必须是正整数,101也不能被分成11和0.
数据范围:
1≤N≤〖10〗^9
N至少有两位及以上的非零字符。
输入:
N
输出:
分成符合条件的两个正整数组合中,两个数字乘积的最大值
样例输入1:
123
样例输出1:
63
样例解释:
如同在问题描述的一样,一共有6种方式可以排列这些字符:
12和3
21和3
13和2
31和2
23和1
32和1
它们的乘积分别为36,63,26,62,23,32.其中,63最大,因此输出63
样例输入2:
1010
样例输出2:
100
样例解释:
分开的方式有两种:100和1, 10 和10, 乘积都是100
样例输入3:
998244353
样例输出3:
939337176
998445332