combinations(组合数)

发布时间:2026/9/16 10:29:07

combinations(组合数) https://www.nowcoder.com/practice/4d0a110416d84c7f9454d0da53ab2da1?tpId46tqId29101tPage4rp4ru/ta/leetcodeqru/ta/leetcode/question-ranking搜索回溯即可.不过注意为了防止重复出现,比如3 个数字选2个数字。避免出现1 3 和3 1 这种结果在选数的时候都是从前面已选好的数字的下一位开始选。class Solution { public: vectorvectorint combine(int n, int k) { vectorvectorint res; if(n 0 || k 0) return res; vectorboolmark(n1);//标记数字是否被用过 vectorinttemp; dfs(0, n, k, 0, mark, temp, res); return res; } //pos表示上次选的数字的位置n,k是n个数字选k个数字 void dfs(int pos, int n, int k, int now, vectorbool mark, vectorint temp, vectorvectorint res ){ if(now k){//选足够k个数字 res.push_back (temp); return ; } if(n - pos k - now)//剪枝。剩下的数字不够k-now个了 return; //从下一个位置选择。避免出现1 3 和 3 1 这种重复的情况 for(int i pos 1; i n; i){ if(!mark[i] ){//数字i没有选过 mark[i] true; temp.push_back (i);//选进去 now;//已选的数目增加 int tmp_pos i; dfs(tmp_pos, n, k, now, mark, temp, res); //回溯 mark[i] false; temp.pop_back(); now--; } } } };
延伸阅读

更多相关文章

2026/9/13 18:25:21

PHP:数组的排序函数:

数组的排序函数: 1.sort(); 不带key升序排序.** <?php $arrarray(0,1111,2,3,1114,5,611,7,8,5669,187780);sort($arr);echo <pre>; print_r($arr); echo </pre>;?>结果 是 Array ([0] > 0[1] > 2[2] > 3[3] > 5[4] > 7[5] > 8[6] >…

2026/9/12 22:44:25

HS2-HF Patch 技术架构与部署框架深度解析

HS2-HF Patch 技术架构与部署框架深度解析 【免费下载链接】HS2-HF_Patch Automatically translate, uncensor and update HoneySelect2! 项目地址: https://gitcode.com/gh_mirrors/hs/HS2-HF_Patch HS2-HF Patch 是基于 BepInEx 插件框架构建的综合性技术解决方案&…

2026/9/16 3:56:13

我用Python实现了一个小说网站雏形

前言 十个python九个爬&#xff0c;在大家的印象中好像Python只能做爬虫。然而并非如此&#xff0c;Python 也可以做Web开发&#xff0c;接下来给大家展示一下如何做一个小说站点。 相关软件 软件版本功能地址Python3.7.1脚本语言https://www.python.org/Django2.1.3Web框架…

2026/9/16 10:25:13

LaTeX新手入门:TeXlive与TeXstudio环境搭建实战指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/16 10:25:13

跨域CORS与SSE/WebSocket实战:从原理到选型指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/16 10:25:13

Python开发医院预约挂号小程序的技术实践

1. 项目概述医院预约挂号小程序是当前医疗信息化建设中的重要一环&#xff0c;它解决了传统挂号方式排队时间长、号源分配不均等问题。基于Python开发的医院预约挂号小程序&#xff0c;结合微信生态的便利性&#xff0c;为患者提供了更加便捷的就医体验。这个项目本质上是一个多…

2026/9/16 10:25:13

Spring Boot 3集成Druid连接池的实践与优化

1. 为什么选择Druid连接池在Spring Boot项目中&#xff0c;数据库连接池的选择直接影响着应用的性能和稳定性。Druid作为阿里巴巴开源的数据库连接池实现&#xff0c;相比HikariCP、Tomcat JDBC等方案有几个独特的优势&#xff1a;首先&#xff0c;Druid提供了全面的监控功能。…

2026/9/16 10:25:13

AIGC短漫剧全链路生产方案:从脚本到成片的工业化实践

1. 项目概述&#xff1a;当AIGC遇上短漫剧&#xff0c;不是“换工具”&#xff0c;而是重构整条产线最近在几个动画制作团队的交流群里&#xff0c;频繁看到这样的吐槽&#xff1a;“一个3分钟的AI短漫剧demo&#xff0c;光提示词调优就花了两天&#xff0c;生成画面卡在‘手部…

2026/9/16 10:20:01

链表合并算法详解:迭代与递归双解法

1. 链表合并问题概述链表操作是算法面试中的常客&#xff0c;而合并两个有序链表更是基础中的基础。这道题看似简单&#xff0c;却蕴含着链表操作的核心思想。我在面试候选人时发现&#xff0c;能完整写出解法的人不少&#xff0c;但能清晰解释每一步操作意图的却不多。今天我们…

2026/9/15 4:54:30

拯救者Y7000黑屏故障排查与维修实战指南

1. 项目概述&#xff1a;一台黑屏的拯救者Y7000&#xff0c;到底卡在哪一步&#xff1f; 联想拯救者Y7000系列笔记本&#xff0c;从2018年第一代搭载i5-8300H开始&#xff0c;到后来的i7-9750H、i7-10750H、i5-11400H&#xff0c;再到2023年款的R7-7840HS&#xff0c;它始终是学…

2026/9/16 0:04:09

PHP源码部署实战:从环境配置到运行情侣游戏全攻略

简介&#xff1a;这是一套面向情侣互动场景的PHP完整源码&#xff0c;集成情侣飞行棋、真心话大冒险、情趣骰子等玩法&#xff0c;并内置完整分销制度&#xff0c;可自定义多种返佣比例&#xff0c;源码完全开源无加密&#xff0c;支持微信无感自动授权登录与第三方授权&#x…

2026/9/15 14:22:53

USB Type-C PCB布局分区设计:电源、高速信号与PD协议全攻略

做硬件这行&#xff0c;Type-C接口算是典型的“看着简单&#xff0c;做起来全坑”的东西。光引脚就24个&#xff0c;高低速信号、电源、控制线全部塞在一个小小的连接器里&#xff0c;如果PCB布局不做规划&#xff0c;打样回来基本就是“插上没反应”、“高速掉线”、“静电一打…

2026/9/15 21:31:11

系统编程学习原型如何补齐稳定性边界

系统编程学习原型如何补齐稳定性边界预算有限时&#xff0c;我先优化明显多余的复制&#xff0c;而不是猜测性地换容器。用借用传递只读数据通常就能减少分配&#xff1a; fn parse(line: &str) -> Result<Item, Error> { /* ... */ }用基准确认热点确实在分配&am…

2026/9/15 11:42:23

雨花区哪家财务公司代理记账比较好?

在雨花区&#xff0c;企业处理财税事务常常面临诸多挑战&#xff0c;选择一家靠谱的财务公司至关重要。湖南巨勤财务管理咨询有限公司就是本地正规实体财税服务机构&#xff0c;深耕本地工商财税行业多年&#xff0c;熟悉当地工商局、税务局最新政策与申报流程。主营公司注册、…

还想了解更多?直接咨询顾问

免费诊断 + 免费方案 + 透明报价。

全国咨询热线400-8866-253
免费获取方案
咨询二维码