首页 > 其他分享 >40. 组合总和 IIc

40. 组合总和 IIc

时间:2024-03-15 16:01:16浏览次数:21  
标签:target returnSize int sum 40 candidatesSize IIc array 总和

/**
 * Return an array of arrays of size *returnSize.
 * The sizes of the arrays are returned as *returnColumnSizes array.
 * Note: Both returned array and *columnSizes array must be malloced, assume caller calls free().
 */
 int temp[100];
 int cmp(const void* a,const void* b){
    return *(int*)a-*(int*)b;
 }

void dfs(int** array,int* candidates,int candidatesSize,int target,int* returnSize,int* column,int index,int sum,int count){
    if(sum>target||index>candidatesSize) return;
    if(index==candidatesSize&&sum!=target) return;
    if(sum==target){
        column[*returnSize]=count;
        array[*returnSize]=(int*)malloc(sizeof(int)*count);
        for(int i=0;i<count;i++) array[*returnSize][i]=temp[i];
        (*returnSize)++;
        return;
    }
    int use[51]={0};
    for(int i=index;i<candidatesSize;i++){
        if(use[candidates[i]]!=0) continue;
        temp[count]=candidates[i];
        use[candidates[i]]=1;
        dfs(array,candidates,candidatesSize,target,returnSize,column,i+1,sum+candidates[i],count+1);
    }
}

int** combinationSum2(int* candidates, int candidatesSize, int target, int* returnSize, int** returnColumnSizes) {
    *returnSize=0;
    int** array=(int**)malloc(sizeof(int*)*2000);
    int* column=(int*)malloc(sizeof(int)*2000);
    qsort(candidates,candidatesSize,sizeof(int),cmp);
    dfs(array,candidates,candidatesSize,target,returnSize,column,0,0,0);
    *returnColumnSizes=column;
    return  array;
}

标签:target,returnSize,int,sum,40,candidatesSize,IIc,array,总和
From: https://www.cnblogs.com/llllmz/p/18075618

相关文章

  • 39. 组合总和c
    脑残了,参数传错了,debug了半天。/***Returnanarrayofarraysofsize*returnSize.*Thesizesofthearraysarereturnedas*returnColumnSizesarray.*Note:Bothreturnedarrayand*columnSizesarraymustbemalloced,assumecallercallsfree().*/int......
  • Dynamsoft Barcode Reader 9.6.40.NET Crack
    .NET版本-9.x发行说明9.6.40(03/14/2024)改进更新了DynamsoftBarcodeReader库和其他相应依赖库的安全性。改进并发实例License的多线程处理逻辑。提高了条码解码性能:提高了解码OneD和PDF417条形码时的准确性。提高了密集DataMatrix代码的可读性。固定的......
  • Javaweb项目使用本地servlet启动,可以弹出主页,跳转到controller报404解决方案
    首先检查项目的资源路径,以及tomcat配置,有没有部署,上下文配置好如果问题依然出现,那么可以考虑tomcat版本与依赖不匹配,我用的是tomcat10,使用使用这个依赖,就解决了这个问题,jakarta.servletjakarta.servlet-api5.0.0provided,相应的匹配版本可以查询到。......
  • 代码随想录训练营第44天 | 动态规划:完全背包理论基础、​​​​​​LeetCode 518.零钱
    目录动态规划:完全背包理论基础文章讲解:代码随想录(programmercarl.com)视频讲解:带你学透完全背包问题!_哔哩哔哩_bilibili思路​​​​​​LeetCode518.零钱兑换II文章讲解:代码随想录(programmercarl.com)视频讲解:518.零钱兑换II_哔哩哔哩_bilibili思路​​​​​​Le......
  • 代码随想录算法训练营第day17|110.平衡二叉树 、 257. 二叉树的所有路径 、404.左叶子
    目录a.110.平衡二叉树b.257.二叉树的所有路径 c.404.左叶子之和a.110.平衡二叉树力扣题目链接(opensnewwindow)给定一个二叉树,判断它是否是高度平衡的二叉树。本题中,一棵高度平衡二叉树定义为:一个二叉树每个节点的左右两个子树的高度差的绝对值不超过1。示例1......
  • 20240314打卡
    第三周第一天第二天第三天第四天第五天第六天第七天所花时间3h5h0h1h代码量(行)274256064博客量(篇)1111知识点了解完成AndroidStudio中原生数据库SQlite简单的CRUD本地数据库连接到远程数据库海底谭练习python的Pyautogui,自动操作G......
  • LeetCodeHot100 73. 矩阵置零 54. 螺旋矩阵 48. 旋转图像 240. 搜索二维矩阵 II
    73.矩阵置零https://leetcode.cn/problems/set-matrix-zeroes/description/?envType=study-plan-v2&envId=top-100-likedpublicvoidsetZeroes(int[][]matrix){inttop=0,bottom=matrix.length,left=0,right=matrix[0].length;int[][]flag......
  • IIC的使用
    IIC特点主从通信高速IIC总线一般可达400kbps以上,用于低速设备通信传输距离短,一般设计PCB板时,外设嵌入pcb半双工通信,同一时间只能单项通信,任意时刻只能有一个主机IIC总线上可连接128个设备,但0x00地址不使用,因此127个设备,但实际设计情况,建议不超过8个,因为总线电容不能超过400......
  • 前端提交数据后http状态码400
    报错如下:分析原因:前端Cookie使用过多,储存数据过大 解决方案:方案一:Nginx配置文件nginx.conf中把请求头内存调大client_header_buffer_size32k;large_client_header_buffers432k;方案二:前端删除部分Cookie,用H5中的本地储存localStorage代替<!DOCTYPEhtml><html>......
  • 404. 左叶子之和c
    /***Definitionforabinarytreenode.*structTreeNode{*intval;*structTreeNode*left;*structTreeNode*right;*};*/intpreorder(structTreeNode*root,intpre){if(!root)return0;if(!root->left&&!roo......