求助神犇告知题目的充电宝怎么个充电过程
查看原帖
求助神犇告知题目的充电宝怎么个充电过程
943490
husa_husa楼主2023/3/16 17:26

思考了好久没想明白,测试案例也不知道怎么求的 我现在知道充电宝可以不计时随意切换,这个充电宝到底是一开始冲呢,还是在某一个设备电量为0的时候冲呢


看了一下题解,都没有解释关于充电器的问题:如果一个时刻有多个手机没电了,怎么办?我觉得这是这题的难点,能明白这一点之后这就是一道普通的实数二分题了。

例如数据:

3 10

5 5

5 5

5 5

答案为:3。按照我代码里的意思是每个手机用了 1s 来充电让他能用到 3s。那么问题就来了,三把手机在 1s 就都没电了,你只给一把充了电,其他的还是没电了,答案不应该是 1 吗?

不是的!我们的充电并不是一次性充了 b[i]-a[i]*x,而是充了多次,他的充电时间和为这个值!为什么可以这样做呢?

首先换手机充电的操作是瞬间完成,其次电量变化是连续的。这也就给了我们充一会一把手机,让它能用到我把其他手机充电到能用到相同时刻的电量的可能。这样我们就可以一直按这样做下去,使其使用时间尽量长。因为使用时间可以二分找到,那么我们对于每把手机的充电量也就可以全部一次性算出来,而不用一份一份算啦。

像题解区大佬给的这个例子,为什么第三秒电量为0的时候再接充电宝充一次呢,最短使用时间可以是无限制,请大佬们详细回答下,感激万分

2023/3/16 17:26
加载中...