装修网站开发前的准备工作网站header设计

张小明 2026/1/10 19:01:38
装修网站开发前的准备工作,网站header设计,国际人才网中山招聘网,济南网站建设手机题目描述给你一个数组 time #xff0c;其中 time[i] 表示第 i 辆公交车完成 一趟旅途 所需要花费的时间。每辆公交车可以 连续 完成多趟旅途#xff0c;也就是说#xff0c;一辆公交车当前旅途完成后#xff0c;可以 立马开始 下一趟旅途。每辆公交车 独立 运行#xff0…题目描述给你一个数组time其中time[i]表示第i辆公交车完成一趟旅途所需要花费的时间。每辆公交车可以连续完成多趟旅途也就是说一辆公交车当前旅途完成后可以立马开始下一趟旅途。每辆公交车独立运行也就是说可以同时有多辆公交车在运行且互不影响。给你一个整数totalTrips表示所有公交车总共需要完成的旅途数目。请你返回完成至少totalTrips趟旅途需要花费的最少时间。示例 1输入time [1,2,3], totalTrips 5输出3解释- 时刻 t 1 每辆公交车完成的旅途数分别为 [1,0,0] 。 已完成的总旅途数为 1 0 0 1 。 - 时刻 t 2 每辆公交车完成的旅途数分别为 [2,1,0] 。 已完成的总旅途数为 2 1 0 3 。 - 时刻 t 3 每辆公交车完成的旅途数分别为 [3,1,1] 。 已完成的总旅途数为 3 1 1 5 。 所以总共完成至少 5 趟旅途的最少时间为 3 。示例 2输入time [2], totalTrips 1输出2解释只有一辆公交车它将在时刻 t 2 完成第一趟旅途。 所以完成 1 趟旅途的最少时间为 2 。提示1 time.length 1051 time[i], totalTrips 107解决方案算法目标给定多辆车的单趟完成时间和需要完成的总趟数找出完成所有趟数所需的最少时间。核心思路确定时间范围时间在[0, 最慢车×总趟数]之间二分查找时间尝试不同的时间计算在该时间内能完成多少趟寻找最小值找到能满足总趟数要求的最小时间算法步骤1. 确定查找范围int min_tmp *min_element(time.begin(), time.end()); long long left -1; // 不可行的下界 long long right (long long)min_tmp * totalTrips; // 可行的上界下界-1肯定不够的时间上界用最慢的车完成所有趟数的时间使用开区间(left, right)left永远不可行right永远可行2. 二分查找主循环while(left 1 right) { long long mid left (right - left) / 2; // 尝试的时间 // 计算在时间mid内能完成的趟数 // 判断并更新边界 }3. 计算可完成趟数long long tmp 0; for(auto p : time) { tmp mid / p; // 每辆车在时间mid内能完成的趟数 if(tmp totalTrips) break; // 提前退出优化 }对每辆车在时间mid内能完成mid / time[i]趟累加所有车的趟数提前退出当已满足总趟数要求时停止计算4. 判断并更新边界if(tmp totalTrips) {left mid; // 时间不够需要更多时间} else {right mid; // 时间足够尝试更少时间}5. 返回结果return right; // 最小的可行时间关键点二分查找对象总时间t不是车辆数验证条件在时间t内能完成的趟数≥ totalTrips搜索方向寻找满足条件的最小t整数除法mid / p自动向下取整因为一趟必须完整完成时间复杂度寻找最慢车O(n)二分查找O(log(min_time × totalTrips))每次验证O(n)总时间O(n log T)示例time [1, 2, 3] totalTrips 5 查找过程 1. 范围: t ∈ [0, 1×55] 2. 尝试 t2: 可完成3趟 5 → 不够 3. 尝试 t3: 可完成5趟 ≥ 5 → 足够 4. 最终结果: t3算法正确性单调性时间越长能完成的趟数越多边界保证left永远不可行right永远可行最终right是最小的可行时间优化亮点提前退出当趟数已达标时立即停止计算开区间二分避免边界处理复杂类型安全使用long long防止溢出函数源码class Solution { public: long long minimumTime(vectorint time, int totalTrips) { int min_tmptime[0]; for(auto p:time){ min_tmpmin(p,min_tmp); } long long left-1; long long right(long long)min_tmp*totalTrips; while(left1right){ long long mid(leftright)/2; long long tmp0; for(auto p:time){ tmpmid/p; if(tmp totalTrips) break; // 提前退出优化 } if(tmptotalTrips) leftmid; else rightmid; } return right; } };
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

街道门户网站的建设思路网店美工的意义

D3.js标签防重叠终极方案:3大策略5步实战实现完美数据可视化 【免费下载链接】d3 Bring data to life with SVG, Canvas and HTML. :bar_chart::chart_with_upwards_trend::tada: 项目地址: https://gitcode.com/gh_mirrors/d3/d3 在数据可视化项目中&#x…

张小明 2026/1/8 15:58:13 网站建设

网站建设中应该返回502还是301西安都有哪些公司

在当今数字化时代,实时视频流媒体技术已成为监控、直播、视频会议等领域的核心技术。RTSP转WebRTC技术架起了传统流媒体与现代Web应用之间的桥梁,让用户无需安装任何插件就能在浏览器中观看RTSP流媒体内容。本文将为您详细解析如何快速实现RTSP转WebRTC&…

张小明 2026/1/7 9:01:05 网站建设

给别人做网站做什么科目深圳 福田 网站建设

用Python玩转工业通信:pymodbus从零实战指南你有没有遇到过这样的场景?现场一堆传感器、PLC和变频器,接口清一色是RS-485,协议写着“支持Modbus”——可当你打开手册,满屏的寄存器地址、功能码、CRC校验,瞬…

张小明 2026/1/6 5:07:01 网站建设

网站运营改进的点网站开发在无形资产中

Windows远程管理革命:Quasar助你实现高效系统运维 【免费下载链接】Quasar Remote Administration Tool for Windows 项目地址: https://gitcode.com/gh_mirrors/qua/Quasar 还在为多台Windows设备的管理维护而奔波吗?传统的现场维护方式不仅耗时…

张小明 2026/1/6 5:06:27 网站建设

网站开发代码h5固原网站制作

Kotaemon心理咨询初筛机器人伦理讨论 在高校心理中心的咨询室门口,常常能看到排着长队的学生。一位辅导员曾无奈地告诉我:“每个学期都有上百人预约,可专职咨询师只有两位。”这并非个别现象——我国平均每10万人才拥有不到5名心理医生&#…

张小明 2026/1/6 5:05:52 网站建设

企业网站建设与推广方案实例wordpress docker

如何简单快速地下载Iwara视频:终极使用指南 【免费下载链接】IwaraDownloadTool Iwara 下载工具 | Iwara Downloader 项目地址: https://gitcode.com/gh_mirrors/iw/IwaraDownloadTool IwaraDownloadTool是一款专为Iwara视频平台设计的智能下载解决方案&…

张小明 2026/1/6 5:05:19 网站建设