494. Target Sum

文章描述了一个名为`findTargetSumWays`的函数,它利用动态规划方法解决给定整数数组`nums`和目标值`target`的问题,计算从数组中选取元素使其和等于目标的组合总数。函数中使用了备忘录技术来优化性能。
摘要由CSDN通过智能技术生成

494. Target Sum

class Solution:
    def findTargetSumWays(self, nums: List[int], target: int) -> int:
        index=len(nums)-1
        curr_sum=0
        self.nums=nums
        self.target=target
        return self.dp(index,curr_sum)

    @cache
    def dp(self,index,curr_sum):
        if index<0:
            if curr_sum==self.target:return 1
            else:return 0
        
        p=self.dp(index-1,curr_sum+self.nums[index])
        n=self.dp(index-1,curr_sum-self.nums[index])
        return p+n

注意不要把变量写错,target

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值