剪绳子
Posted make-big-money
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了剪绳子相关的知识,希望对你有一定的参考价值。
结论:选用尽量多的3,直到剩下2或者4时,用2
/*
*
*选用尽量多的3,直到剩下2或者4时,用2
*如果有三个以上的2,那么 3×3>2×2×23×3>2×2×2,所以替换成3乘积更大;
*所以最多能拆成两个2,即4
*/
class Solution {
public:
int maxProductAfterCutting(int n) {
if(n<=3) return 1*(n-1);//边界情况。
int res =1;
if(n % 3 == 1) //拆成两个2.即4
{
res = 4;
n = n-4;
}
//绳子中有2
else if(n%3 == 2)//只能拆成一个2
{
res =2;
n=n-2;
}
//只有3
while(n)
{
res=res*3;
n-=3;
}
return res;
}
};
以上是关于剪绳子的主要内容,如果未能解决你的问题,请参考以下文章