Menu
CoddyTech

Subset Sum Problem

中等动态规划python iconjava iconcpp iconc iconjs icon+10

nums 中存放着正整数,target 是一个正整数。你能从中选出一些值,每个位置最多选一次,使它们的和恰好等于 target 吗?如果可以,返回 true;如果没有可行的选法,返回 false。

函数

isSubsetSum(nums: integer-array, target: integer) → boolean
numsinteger-array
你可以选择的正数
targetinteger
选中的值必须达到的准确总和
返回值boolean
当部分值相加后恰好等于 target 时为 true,否则为 false

约束条件

  • 1 ≤ nums.length ≤ 200
  • 1 ≤ nums[i] ≤ 104
  • 1 ≤ target ≤ 104

示例

输入
nums = [8, 3, 11, 5, 7]target = 15
输出
true
解释
8 + 7 = 15,所以答案是 true。选择 3 + 5 + 7 也可以,选一组就够了。
challenge icon

进阶

两个相等的值在不同位置时算作不同的选取。有多少种选取能得到 target?

重置代码
def isSubsetSum(nums, target):
    # 在这里编写代码

测试 #1

测试 #2

测试 #3

参数

nums = [8, 3, 11, 5, 7]
target = 15

预期输出

true