#Z1038. 最大乘积

最大乘积

题目描述

给定一个正整数 nn(不含前导零),在它的十进制表示中某两个相邻数位之间切一刀,将它分成左右两个非空数串。把这两个数串分别按十进制读作整数(右侧数串允许前导零,例如 1∣051|05 读作 11 和 55),再将两数相乘,求所有切法中乘积的最大值。

例如 n=1456n=1456,可以切成 1×456=4561\times456=456,14×56=78414\times56=784,145×6=870145\times6=870。最大值为 870870。

输入格式

一行一个正整数 nn。保证 n≥10n\ge 10。

输出格式

一行一个整数,表示最大乘积。

1456
870
90
0

样例解释

样例 11:切法有 1×456=4561\times456=456,14×56=78414\times56=784,145×6=870145\times6=870,最大 870870。

样例 22:只有一种切法 9×0=09\times0=0。

数据范围与约定

子任务 分值 限制
11 3030 n<100n<100
22 n≤109n\le 10^9
33 4040 n≤1018n\le 10^{18}

下发样例

下发样例下载