最优除法
难度:中等
通过加括号得到最大值结果,实际上是让除数尽可能的小,因为数组中的数字都是正整数,那么让除数变小就等同于让它一直除下去, 即 a/b/c/d/e…的最大值括号位置就是a/(b/c/d/e…)
代码如下:
public String optimalDivision(int[] nums) {
StringBuilder sb = new StringBuilder();
if (nums.length<=2){
for (int num : nums) {
sb.append(num);
sb.append("/");
}
sb.deleteCharAt(sb.length()-1);
}else{
for (int i = 0; i < nums.length; i++) {
if(i==1){
sb.append("(");
}
sb.append(nums[i]);
sb.append("/");
}
sb.deleteCharAt(sb.length()-1);
sb.append(")");
}
return sb.toString();
}
执行结果:成功