• 2024-07-01天平2——三进制的货币系统
    Description:    J王国的货币非常奇怪,面值都是3的若干次方即面值为1,3,9,27,81.........国王现在发现这些货币,每种只有一张这样的钱。于是国王发现从这些钱中先任意组合,再加钱的面值相加得到一个总和的话:则面值最小的为空集,也就是说一张钱也不要面值第2小的为{1},总
  • 2024-07-01代码随想录算法训练营第四十三天 | 52.携带研究材料 518.零钱总和II 377.组合总和IV 70.爬楼梯
    完全背包有N件物品和一个最多能被重量为W的背包,第i间物品的重量为weights[i],价值为value[i],每件物品都有无限个,求解将哪些物品装入背包里,物品价值总和最大遍历顺序:纯完全背包问题(即求装满背包后的最大价值)先遍历背包先遍历物品都是可以的和零一背包求解的最大不同就是遍历顺序
  • 2024-06-22LeetCode 134加油站,是环路,但我不绕圈,秒了。
    不绕圈是指,不需要看能不能转一圈回到起始点,只需要看能不能到达最后一个元素就行。在做这一道题的时候,如果判断能不能回到出发点,则需要绕一圈再回来,不仅需要创建临时变量,还要频繁使用%n获得余数,非常的不优雅。下面是优化方法:由题目很容易得出,如果存在解,则必定有gas总和大于
  • 2024-06-18Day 26| 39. 组合总和 、 40.组合总和II 、 131.分割回文串
    组合总和本题是集合里元素可以用无数次,那么和组合问题的差别其实仅在于startIndex上的控制题目链接/文章讲解:https://programmercarl.com/0039.组合总和.html视频讲解:https://www.bilibili.com/video/BV1KT4y1M7HJ给定一个无重复元素的数组candidates和一个目标数targ
  • 2024-06-13Day18 | 513. 找树左下角的值 | 112.路径总和、113.路径总和ii
    513.找树左下角的值本题递归偏难,反而迭代简单属于模板题,两种方法掌握一下题目链接/文章讲解/视频讲解:https://programmercarl.com/0513.找树左下角的值.html思考层序遍历秒了#Definitionforabinarytreenode.#classTreeNode:#def__init__(self,val=0,left
  • 2024-06-11路径总和-力扣
    本题想到的解法是对二叉树进行深度搜索,并记录路径和,当节点为叶子节点时,将路径和与目标值进行判断,如果相等则返回true,否则返回false,最后返回左右子树或的值即可,因为只需有一条满足条件就可以。/***Definitionforabinarytreenode.*structTreeNode{*intv
  • 2024-06-03代码随想录算法训练营第27天 | 39. 组合总和 、 40.组合总和II 、 131.分割回文串
    组合总和本题是集合里元素可以用无数次,那么和组合问题的差别其实仅在于startIndex上的控制题目链接/文章讲解:https://programmercarl.com/0039.组合总和.html视频讲解:https://www.bilibili.com/video/BV1KT4y1M7HJ/***@param{number[]}candidates*@param{number
  • 2024-05-162024年CodeStar年度总和评估-普及综合组
    T6.燃料小明要开车从家里前往远方的城市\(C\),他家到城市的路程是\(L\)公里。他的车每开\(1\)公里需要消耗\(1\)升汽油,车的油箱最多只能装\(V\)升汽油,出发前他的车是加满汽油的。路途中有\(n\)个加油站,第\(i\)个加油站离小明家的路程是\(x_i\)公里,在这里可以花费
  • 2024-05-1539. 组合总和(leetcode)
    https://leetcode.cn/problems/combination-sum/description/两种搜索思路一种是选或不选,搜索树是一颗二叉树另一种是选哪个数,是一个n叉树二叉classSolution{List<List<Integer>>res=newArrayList<>();inttarget;int[]nums;List<Integer>
  • 2024-05-0639. 组合总和-c++
    给你一个无重复元素的整数数组candidates和一个目标整数target,找出candidates中可以使数字和为目标数target的所有不同组合,并以列表形式返回。你可以按任意顺序返回这些组合。candidates中的同一个数字可以无限制重复被选取。如果至少一个数字的被选数量不同
  • 2024-04-23【每日一题】组合总和 Ⅳ
    377.组合总和Ⅳ给你一个由不同整数组成的数组nums,和一个目标整数target。请你从nums中找出并返回总和为target的元素组合的个数。题目数据保证答案符合32位整数范围。示例1:输入:nums=[1,2,3],target=4输出:7解释:所有可能的组合为:(1,1,1,1)(1,1,2
  • 2024-04-22【每日一题】组合总和 III
    216.组合总和III找出所有相加之和为 n的 k 个数的组合,且满足下列条件:只使用数字1到9每个数字 最多使用一次 返回所有可能的有效组合的列表。该列表不能包含相同的组合两次,组合可以以任何顺序返回。示例1:输入:k=3,n=7输出:[[1,2,4]]解释:1+2+4
  • 2024-04-15377. 组合总和 IV
    题目链接:本题是爬楼梯的又一变式。分析样例可知,每次选择的都可以是\(\rmnums\)中的任一个数,而最后选择完毕的数之和等于\(\rmtarget\).可以认为我们每次从\(\rmnums\)中选一个数作为往上爬的台阶数,问爬\(\rmtarget\)个台阶有多少种方案。因此爬楼梯那个题可以认为
  • 2024-04-1527天【代码随想录算法训练营34期】第七章 回溯算法part03(● 39. 组合总和 ● 40.组合总和II ● 131.分割回文串)
    39.组合总和怎么才能避免重复?比现在数小的数就别append到path里面了,之前肯定都试过了classSolution:defcombinationSum(self,candidates:List[int],target:int)->List[List[int]]:result=[]candidates.sort()self.backtracking(cand
  • 2024-04-07437. 路径总和 III
    题面核心思想树上的前缀和o(n)当前的前缀和:curSum前面的前缀和:preSum如果curSum-preSum==target就说明有一段区间和为target,preSum出现了几次就有几段区间,所以用map存储前缀和出现的次数代码classSolution{privateintres=0;//437.路径总和III
  • 2024-04-06代码随想录算法训练营DAY18|C++二叉树Part.5|513.找树左下角的值、112. 路径总和、113.路径总和II、106\105.从中(前)序与后(中)序遍历序列构造二叉树
    文章目录513.找树左下角的值层序-迭代遍历前中后序-递归遍历思路伪代码CPP代码112.路径总和、113.路径总和II112.路径总和思路伪代码实现CPP代码113.路径总和II思路伪代码实现CPP代码实现106\105.从中(前)序与后(中)序遍历序列构造二叉树106.从中序与后序遍历序列
  • 2024-04-01代码随想录算法训练营第二十七天(回溯3)|39. 组合总和、40. 组合总和 II、131. 分割回文串(JAVA)
    文章目录39.组合总和解题思路源码40.组合总和II解题思路源码131.分割回文串解题思路源码39.组合总和给你一个无重复元素的整数数组candidates和一个目标整数target,找出candidates中可以使数字和为目标数target的所有不同组合,并以列表形式返回
  • 2024-04-01leedcode-区域和检索 - 数组不可变
    自己写的,耗时很长classNumArray:def__init__(self,nums:List[int]):#初始化NumArray类,接收一个整数列表nums作为参数self.nums=nums#将传入的nums列表存储为对象的属性defsumRange(self,left:int,right:int)->int:"""
  • 2024-03-26代码随想录算法训练营第二十七天|●39. 组合总和 ● 40.组合总和II ● 131.分割回文串(JS写法)
    39组合总和题目链接/文章讲解:https://programmercarl.com/0039.%E7%BB%84%E5%90%88%E6%80%BB%E5%92%8C.html视频讲解:https://www.bilibili.com/video/BV1KT4y1M7HJ一开始自己写的大概和答案差不多,但是弄不明白回溯要传递的参数,但是自己一开始想到了终止条件,如果>7了就
  • 2024-03-26平均数
    平均数,一般指算术平均数,它是一组数据中所有数值的总和除以数据个数。举例,有3个数,它们是4,5,9。第1步:求出总和4+5+9=18第2步:总和除以个数3,18÷3=6那么这3个数的平均数就是6。然而,平均数也有一些局限性,比如它容易受到极端值的影响。举例,晚上一个酒吧内8个快递员在喝酒,他们的平
  • 2024-03-23代码随想录算法训练营第十八天| 513. 找树左下角的值 112. 路径总和 113. 路径总和 II
    513.找树左下角的值https://leetcode.cn/problems/find-bottom-left-tree-value/description/publicintfindBottomLeftValue(TreeNoderoot){intval=0;Deque<TreeNode>deque=newArrayDeque<>();deque.offer(root);whi
  • 2024-03-2139. 组合总和c
    /***Returnanarrayofarraysofsize*returnSize.*Thesizesofthearraysarereturnedas*returnColumnSizesarray.*Note:Bothreturnedarrayand*columnSizesarraymustbemalloced,assumecallercallsfree().*/inttemp[50];voiddfs(int*c
  • 2024-03-2140. 组合总和 IIc
    /***Returnanarrayofarraysofsize*returnSize.*Thesizesofthearraysarereturnedas*returnColumnSizesarray.*Note:Bothreturnedarrayand*columnSizesarraymustbemalloced,assumecallercallsfree().*/inttemp[150];intcmp(const
  • 2024-03-18代码随想录算法训练营day27 | leetcode 39. 组合总和、40. 组合总和 II、131. 分割回文串
    目录题目链接:39.组合总和-中等题目链接:40.组合总和II-中等题目链接:131.分割回文串-中等题目链接:39.组合总和-中等题目描述:给你一个无重复元素的整数数组candidates和一个目标整数target,找出candidates中可以使数字和为目标数target的所有不同组合,并以列表形
  • 2024-03-18代码随想录算法训练营第27天|39. 组合总和|40.组合总和II|131.分割回文串
    代码随想录算法训练营第27天|39.组合总和|40.组合总和II|131.分割回文串详细布置39.组合总和本题是集合里元素可以用无数次,那么和组合问题的差别其实仅在于startIndex上的控制题目链接/文章讲解:https://programmercarl.com/0039.%E7%BB%84%E5%90%88%E6%80%BB%E5%9