news 2026/10/19 4:22:02

20251103折半搜索总结

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
20251103折半搜索总结

引子

折半搜索(又称meet-in-the-middle)是一种优化搜索算法的方法。其说白了就是将搜索过程分成两个部分:先分别对两部分进行独立搜索,得到两个结果序列,最后通过合并这两个序列得到答案。

由于搜索算法的时间复杂度通常为指数级,当n较大时容易导致超时。采用折半搜索后,时间复杂度可由O(2n)O(2^n)O(2n)降到O(2n2+1)O(2^{\frac{n}{2}+1})O(22n​+1)。

C P4799 世界冰球锦标赛

折半搜索模板为何放在放在第三题?

这题就先折半搜索,接着合并时,我们可以先将一部分进行排列使其有序,然后遍历另一部分,每次进行二分搜索查找可行的答案,最后叠加可行方案数。

#include<bits/stdc++.h>usingnamespacestd;intn;longlongm,a[45];vector<longlong>a1,a2;voiddfs1(intk,longlongsum){if(sum>m)return;if(k>n/2){a1.push_back(sum);return;}dfs1(k+1,sum+a[k]);dfs1(k+1,sum);}longlongans=0;voiddfs2(intk,longlongsum){if(sum>m)return;if(k>n){a2.push_back(sum);return;}dfs2(k+1,sum+a[k]);dfs2(k+1,sum);}intmain(){cin>>n>>m;for(inti=1;i<=n;i++){cin>>a[i];}dfs1(1,0);dfs2(n/2+1,0);sort(a2.begin(),a2.end());for(autoi:a1){intp=upper_bound(a2.begin(),a2.end(),m-i)-a2.begin();ans+=p;}cout<<ans;return0;}
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/10/17 7:38:36

Spot实例竞价:短期任务节省开支

Spot实例竞价&#xff1a;短期任务节省开支 在AI应用日益普及的今天&#xff0c;越来越多团队希望部署私有化的智能问答系统——比如基于文档的RAG引擎或企业知识助手。但现实往往令人却步&#xff1a;一块GPU云服务器动辄每月数千元&#xff0c;而大部分时间系统其实处于闲置…

作者头像 李华
网站建设 2026/10/12 4:44:31

数字信号处理篇---共轭对称性

一句话核心思想如果一个信号是“实数”的&#xff08;你在现实世界能测量到的&#xff0c;比如声音、电压&#xff09;&#xff0c;那么它的频谱&#xff08;傅里叶变换结果&#xff09;就像一张左右对称的剪纸。你只需要知道右半边&#xff0c;左半边就是它的“镜像”。第一步…

作者头像 李华
网站建设 2026/10/15 17:59:42

灾备切换实战测试:确保系统永不停机

灾备切换实战测试&#xff1a;确保系统永不停机 在金融、医疗和法律等行业&#xff0c;AI系统已不再是“锦上添花”的辅助工具&#xff0c;而是支撑核心业务运转的关键基础设施。一旦知识问答平台宕机几分钟&#xff0c;可能意味着客户合同审查停滞、内部技术支持中断&#xff…

作者头像 李华
网站建设 2026/10/14 7:56:54

探秘微观世界:噬菌体展示技术如何构建“分子宝库”并精准“捕手”

在现代生命科学的工具库中&#xff0c;有一项技术能够高效地从数十亿分子中快速找出能与特定目标结合的“那把钥匙”&#xff0c;它就是噬菌体展示技术。这项技术的强大能力&#xff0c;始于一个最为关键的奠基性步骤——噬菌体展示文库构建。今天&#xff0c;我们就一起走进这…

作者头像 李华
网站建设 2026/10/18 18:05:27

传输中加密:TLS1.3最新协议支持

传输中加密&#xff1a;TLS1.3最新协议支持 在当今 AI 应用广泛渗透企业与个人场景的背景下&#xff0c;一个看似基础却至关重要的问题正变得愈发敏感——数据在“路上”是否安全&#xff1f; 设想这样一个画面&#xff1a;你在 anything-llm 中上传了一份包含公司未来战略规划…

作者头像 李华