#238. 数组不相邻元素和目标值判断
数组不相邻元素和目标值判断
组和约束
题目背景
聪聪正在玩一个数字游戏,他需要从一串数字中挑选一些,但又不能让相邻的数字同时被选中。
题目描述
给定一个整数数组 nums,判断是否可能选择数组中的一些整数,使得它们的和等于给定的目标值 target,并满足一个额外约束:如果数组中的一个值被选中,那么它在数组中紧随其后的值不能被选中。此问题通常通过递归解决,无需显式循环。
输入格式
输入以如下格式从标准输入中给出。
startnumstarget
其中 start 是一个整数,表示开始考虑的数组索引(通常为 );nums 是一个整数数组;target 是一个整数,表示目标和。
输出格式
输出以如下格式输出到标准输出中。
result
result 是一个布尔值,如果存在满足条件的组,则为 true,否则为 false。
样例
0 [2 5 10 4] 12
true
0 [2 5 10 4] 14
false
0 [2 5 10 4] 7
false
样例解释
样例 1: 对于输入 0 [2 5 10 4] 12,可以选择 2 和 10。它们的和为 。2 被选中,其后的 5 未被选中;10 被选中,其后的 4 未被选中。满足约束,因此输出 true。
样例 2: 对于输入 0 [2 5 10 4] 14,在满足约束的条件下,无法找到和为 的组合,因此输出 false。
样例 3: 对于输入 0 [2 5 10 4] 7,在满足约束的条件下,无法找到和为 的组合,因此输出 false。
数据范围
每个测试用例的时间限制为 秒,内存限制为 MiB。