< 弱牛刷贪心给JerryDung&qiuwei大神Orz>最大乘积
描述
一个正整数一般可以分为几个互不相同的自然数的和,如3=1+2,4=1+3,5=1+4=2
+3,6=1+5=2+4,…。
现在你的任务是将指定的正整数n分解成若干个互不相同的自然数的和,且使这些自然
数的乘积最大。
【输入】
只一个正整数n,(3≤n≤10000)。
一开始我认为只要能分得的乘积最多就是最好
但我发现 先不考虑要不相同。就发现了反例 6=3+3,3*3=9 6=2+2+2,2*2*2=8.
后来我才发现这种顾虑是不该存在的,因为实际情况下 2*2=4=2+2 将4分开是毫无意义的 而且实际上2也不可能同时有两个 2*2*2=6 其实是 2*4 这在算法的下一个问题。
已经发现 及时乘积越多越好 也有很多种分法 难道用搜索?
其实很容易就发现一个结论 那就是我没想好。。