LeetCode讲解篇之377. 组合总和 Ⅳ

文章目录

题目描述

题解思路

总和为target的元素组合个数 可以由 总和为target - nums[j]的元素组合个数 转换而来,其中j为nums所有元素的下标

而总和target - nums[j]的元素组合个数 可以由 总和为target - nums[j] - nums[k]的元素组合个数 转换而来,其中k为nums所有元素的下标

依次类推,转换成我们已知的条件 总和为0的元素组合个数为1

这是一种从结果出发,不断转换到我们已知条件的一种操作,通过这题,希望大家能够有所感悟

题解代码

go 复制代码
func combinationSum4(nums []int, target int) int {
    f := make([]int, target + 1)
    f[0] = 1

    for i := 1; i <= target; i++ {
        for _, num := range nums {
            if i >= num {
                f[i] += f[i - num]
            }
        }
    }

    return f[target]
}

题目链接

https://leetcode.cn/problems/combination-sum-iv/description/

相关推荐
B站_计算机毕业设计之家25 分钟前
预测算法:股票数据分析预测系统 股票预测 股价预测 Arima预测算法(时间序列预测算法) Flask 框架 大数据(源码)✅
python·算法·机器学习·数据分析·flask·股票·预测
007php0071 小时前
京东面试题解析:同步方法、线程池、Spring、Dubbo、消息队列、Redis等
开发语言·后端·百度·面试·职场和发展·架构·1024程序员节
想唱rap1 小时前
C++ list 类的使用
c语言·开发语言·数据结构·c++·笔记·算法·list
l1t1 小时前
利用DuckDB SQL求解集合数学题
数据库·sql·算法·集合·duckdb
yuyanjingtao1 小时前
CCF-GESP 等级考试 2024年9月认证C++四级真题解析
c++·算法·青少年编程·gesp·csp-j/s
微笑尅乐2 小时前
洗牌算法讲解——力扣384.打乱数组
算法·leetcode·职场和发展
Lei_3359672 小时前
[算法]背包DP(01背包、完全背包问题、多重背包、分组背包、混合背包问题、有依赖的背包问题等)
c++·算法
uesowys2 小时前
华为OD算法开发指导-比赛的冠亚季军
算法·华为od
天选之女wow2 小时前
【代码随想录算法训练营——Day48】单调栈——42.接雨水、84.柱状图中最大的矩形
算法·leetcode
不知名。。。。。。。。2 小时前
算法之动态规划
算法·动态规划