求一正整数的所有乘积形式
例如:
12的所有乘积形式有4种:
1*12
2*6
3*4
2*2*3
8的所有乘积形式3种:
1*8
2*4
2*2*2
其中a*b和b*a和1*a*b我们当做一种形式。
[解决办法]
可以这样弄。用split函数将数写成两个数相乘,但是前者要大于后者,一直分解到不可以再分。这个就跟将数写成不同数的和是一样的。
举个例子。
12=2*6
12=2*2*3,这就是一个周期
12=3*4,这又是一个周期
我们教材是 华中科技大 的 算法基础 教材。
书上就有一个写得将正整数分解成所有的和的形式
12=1+11,(11可以继续分解)