最小表达式
时间限制:C/C++ 1秒,其他语言2秒
空间限制:C/C++ 262144K,其他语言524288K
64bit IO Format: %lld
题目描述
给出一个包含数字1-9和加号的字符串,请你将字符串中的字符任意排列,但每种字符数目不变,使得结果是一个合法的表达式,而且表达式的值最小。输出那个最小表达式的值
合法的表达式的定义如下:
-
一个数字,如233,是一个合法的表达式
-
A + B是合法的表达式,当且仅当 A , B 都是合法的表达式
保证给出的表达式经过重排,存在一个合法的解。
输入描述:
一行输入一个字符串,仅包含数字1-9和加号+。
字符串的长度小于5*105。
输出描述:
一行输出一个数字,代表最小的解。
示例1
输入
111+1
输出
22
说明
11+11=22
示例2
输入
9998765432111
输出
1112345678999
示例3
输入
12+35
输出
38
说明
25+13 = 38
示例4
输入
23984692+238752+2+34+
输出
5461