华为OD机试真题 新系统 2026-08-16 C++【电池充电时间计算】
2026/9/3 5:36:21 网站建设 项目流程

目录

题目

思路

Code

题目

题目内容:

给定电池容量、充电器最大输出电流、当前电量百分比和目标电量百分比,按照分段充电曲线计算充到目标电量所需的小时数。

电量低于 20% 时电流为最大电流的 20%;电量在 20% 到 80% 之间时使用最大电流;电量达到 80% 后,电流按 current(soc)=maxCurrent*(1-(soc-80)*0.045) 线性衰减。恒压阶段可使用起止电流的平均值计算时间。

输入描述:

输入一行四个整数 batteryCapacity,maxCurrent,initialSOC,targetSOC。容量范围 1000 到 10000 mAh,最大电流范围 500 到 10000 mA,0 <= initialSOC <= targetSOC <= 100。

输出描述:

输出充电所需小时数,四舍五入保留一位小数。

样例 1

输入:

3000,1500,0,100

输出:

3.9

说明:

预充、恒流和恒压阶段分别约耗时 2.0、1.2 和 0.73 小时,总计约 3.93 小时。

思路

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询