7274 - 数字分割(digital)

通过次数

2

提交次数

2

时间限制 : 1 秒
内存限制 : 512 MB

给定一个正整数num,将num分割为两个非负整数,将分割的两个数拼接起来得到num各位数的任意一个排列,且出现的数字次数与num中数字出现次数保持一致(分离出的两个数可以包含前导0)。

请你编程计算出分割出来的两个数的和最小是多少?分割出来的两个数需要满足以下规律: ①为保证数字和的位数尽可能小,两个数字的位数要尽可能的接近。

②为保证两个数字各自尽可能小,两个数字的最高位要尽可能小,且保证最高位的情况下再使得次高位尽可能小……以此类推。

输入

输入一行一个正整数num

输出

输出分割后两个数的最小和。

样例

输入

94760

输出

116

输入

9811

输出

37

输入

985211

输出

287

提示

【数据范围】

对于所有测试数据保证:1≤num≤10^9

来源

云南精英赛