当前位置: 首页 > news >正文

【C++算法】DFS深度搜索-组队问题

本题取自蓝桥杯19年省赛

一 原题复现

现有20名球员,给定他们各自在5个位置的评分。

从中选取5名球员

求评分最高的组合方式

二 贪心算法是否可行

乍一看这题,貌似可以利用贪心算法进行选择--每个位置选出评分最高的人。那么问题来了,如果一个人同时在两个位置评分都是最高的该怎么选呢?从中选出一个最高的,再在另一个位置选择第二高的?显然不行。难以保证两个位置评分之和最高。举个例子:球员a={1,2,6,7,9},b={1,2,5,5,8}。假设球员a在4,5号位评分最高,b在4号位评分第二高。按照刚才的思路,我们应该选择a来5号位,b来4号位。这样评分就是9+5,而最高显然是7+8。贪心的本质是局部最优,推算到全局最优,但对于这种指派问题,难以由局部推向全局最优。且要考虑的条件较多情况复杂。故在此我们暂时舍弃贪心算法。

三 DFS思路

若利用深度搜索,思路就比较清晰了,我们穷尽所有情况,如果选中了5个球员直接返回,并且更新最大的评分。其中我们需要建立一个访问数组vist,来保证不会出现重复选择的情况。

四 DFS代码复现

以上就是我的思路,以及代码,代码中穿插了所需要注意的细节。欢迎各位讨论

http://www.cnnetsun.cn/news/1388574.html

相关文章:

  • Qwen3智能字幕对齐系统部署排错:常见问题与403 Forbidden解决方案
  • 手把手教你用DeepSeek-OCR-2:表格、标题、段落精准识别全攻略
  • 数字后端实战:ICG使能端setup违例的根源分析与优化策略
  • 如何用pywencai构建高效数据获取解决方案?3大核心优势解析
  • std::unique_lock 与 std::lock_guard
  • 别再只怪网络了!排查Moonlight/SteamLink串流失败的另一个关键:Windows会话状态
  • Windows任务栏分组管理终极指南:Taskbar Groups让桌面井井有条
  • Qwen2.5-VL-7B-Instruct与MySQL集成:构建智能问答知识库系统
  • Nanbeige 4.1-3B部署教程:OpenTelemetry集成实现像素终端全链路追踪
  • RexUniNLU实战:用零样本框架快速解析社交媒体热点话题
  • 通义千问3-4B优化升级:如何让本地知识库响应更快、更准确
  • 从配置文件,去理解OpenClaw的消息路由(第13讲,干货收藏)
  • 支持实时备份功能的云盘并不少见:2026年功能原理与产品深度盘点
  • [逆向] x64dbg消息断点实战:从游戏交互到API追踪
  • 从流量到留存的数字化飞跃:企业微信私域运营自动化全链路方案
  • 2026年VPS托管服务更新:功能升级与市场竞争新态势
  • Qt之QFile高效文件读写实践指南
  • SOONet模型Matlab联合仿真:视频分析与算法验证工作流
  • 新概念英语第一册055_The Sawyer family
  • 省下10小时读文献时间!百考通AI自动生成结构完整、引用规范的综述
  • AAAI 2026 | 解锁LLM真实想法!EAGLE从多层隐藏状态出发,让置信度评估告别“表面功夫”
  • OFA-VE与PS软件集成:创意设计中的视觉分析
  • CTC语音唤醒模型在Java企业级应用中的实践案例
  • Mac上Docker Desktop配置全攻略:从零开始搭建多容器开发环境(含常见错误修复)
  • Verilog 组合逻辑中不完整条件语句的锁存器陷阱与规避实战
  • 计算机毕业设计springboot旺苍县图书管理平台 基于SpringBoot的旺苍县智慧图书馆信息管理系统 SpringBoot框架下的旺苍县公共图书服务数字化平台
  • TMS320F280049C 实战解析:CLA 在电机控制中的高效应用
  • 【目标跟踪算法】Strong SORT与Deep SORT对比:优化点解析与性能提升实战
  • Three.js实战:基于Gemini3与MediaPipe打造手势驱动的3D粒子艺术画廊
  • SecGPT-14B可部署方案:离线环境运行,满足等保三级数据不出域要求