343. Integer Break

来源:互联网 发布:小说素材软件 编辑:程序博客网 时间:2024/05/17 21:56


分析找规律:

n : 2 3  4   5    6    7     8    9     10     11

结果: 1 2 2×2 2×3  3×3  2×2×3  2×3×3 3×3×3 2×2×3×3 2×3×3×3

程序如下:

class Solution {public:    int integerBreak(int n) {//给定不小于2的正数n,将其拆成若干正数的和,使这些正数的乘积最大,并返回最大乘积        if(n==2)return 1;        if(n==3)return 2;        else if(n%3==0)return pow(3,n/3);        else if(n%3==1){            int temp=pow(3,(n-4)/3);            return 2*2*temp;        }        else             return 2*pow(3,(n-2)/3);    }};


0 0
原创粉丝点击