【发布时间】:2017-01-07 23:00:38
【问题描述】:
给定一个整数数组,是否可以选择一组整数,从起始索引开始,使得组和给定目标?但是,必须选择所有 6 的附加约束。
groupSum6(0, [5, 6, 2], 8) → 真
groupSum6(0, [5, 6, 2], 9) → 假
groupSum6(0, [5, 6, 2], 7) → 假
只是想弄清楚我哪里出错了。为 nums[start] == 6 声明一个特殊情况是错误的方法吗?
public boolean groupSum6(int start, int[] nums, int target) {
if (nums[start] >= nums.length) {return (target == 0);}
if (nums[start] == 6){
return groupSum6(start++, nums, target - nums[start]);
}
if (groupSum6(start++, nums, target - nums[start])) {return true;}
//if a particular number is choosen
if (groupSum6(start++, nums, target)) {return true;}
//if that particular number is not chosen
return false;
}
【问题讨论】:
标签: java