0/1 分数规划
引入
0/1 分数规划通常是指以下一种类型的问题:
给定两个序列 a 和 b,试求一组可行解 x 使得下式最大/最小化:∑ni=1ai×xi∑ni=1bi×xi
也就是说,就是给定 n 对正整数 ai,bi,从中选出若干对使得选出的数 a 之和与 b 之和的比最大/最小化。
解法
考虑二分答案。∑ni=1ai×xi∑ni=1bi×xi>midn∑i=1ai×xi>mid×n∑i=1bi×xin∑i=1ai×xi−mid×n∑i=1bi×xi>0n∑i=1xi×(ai−mid×bi)>0
简单推式子可知,每一组 (ai,bi) 对答案的贡献为 ai−mid×bi。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】