#abc221c. [abc221_c]Select Mul

[abc221_c]Select Mul

问题描述

给定一个整数 NN。考虑对 NN 的数字进行排列,并将它们分成两个正整数

例如,对于整数 123123,有六种分离的方式,如下所示:

  • 分离为 121233
  • 分离为 212133
  • 分离为 131322
  • 分离为 313122
  • 分离为 232311
  • 分离为 323211

在这里,分离后的两个整数不能含有前导零。例如,不允许将整数 101101 分离为 110101。另外,由于分离后的整数必须是正整数,因此也不允许将 101101 分离为 111100

通过最佳分离,所得到的两个整数的乘积最大是多少?

约束条件

  • NN 是一个介于 1110910^9(包括)之间的整数。
  • NN 包含两个或更多位且不全为 00

输入

输入以以下格式从标准输入中给出:

NN

输出

打印分离后的两个整数乘积的最大值。


示例输入 1

123

示例输出 1

63

根据问题描述,有六种分离的方式:

  • 分离为 121233
  • 分离为 212133
  • 分离为 131322
  • 分离为 313122
  • 分离为 232311
  • 分离为 323211

按照这个顺序,这些数对的乘积分别为 363663632626626223233232,其中 6363 是最大的。


示例输入 2

1010

示例输出 2

100

有两种分离方式:

  • 分离为 10010011
  • 分离为 10101010

无论哪种情况,乘积都是 100100


示例输入 3

998244353

示例输出 3

939337176