给定一个整数的幂运算连乘表达式,要求将其转换为质数的乘积表达式,并按质数从小到大的顺序输出。
表达式中可能包含乘法运算(*
)和幂运算(^
)。整数范围为 [1, 100000],指数范围为 [1, 100],表达式最长为 1000 个字符。转换后的结果应是质数因子的乘法形式,所有质数按从小到大的顺序排列。
输入:
实现将一个整数的幂运算,转换为质数的乘运算,质数按从小到大排序。
质数是指在大于1的自然数中,除了1和它本身以外不再有其他因数的自然数。
整数的幂运算连乘表达式,表达式中只有乘和幂运算,其中∗表示乘运 算,^表示幂运算。 整数的范围: [1,100000] 指数的范围:[1,100] 输入为一个合法的表达式,表达式最长为1000个字符。
转换为质数的乘运算,质数按从小到大排序。
测试用例保证,输出最长不超过100000。
输入
6^3*10
输出
2*2*2*2*3*3*3*5
说明
63∗10
63可以拆分为质数乘(2∗3)3,进一步表示为2∗2∗2∗3∗3∗3
10可以拆分为质数乘2∗5
所以整体转换为
2∗2∗2∗3∗3∗3∗2∗5
对质数进行排序
2∗2∗2∗2∗3∗3∗3∗5
输入
5*14
输出
2*5*7
说明
14可以拆分为2∗7
所以整体转换为
5∗2∗7
对质数进行排序
2∗5∗7