貪心演算法題目 電池的壽命

2021-10-03 11:01:38 字數 1021 閱讀 7607

題目:

小s新買了乙個掌上遊戲機,這個遊戲機由兩節5號電池供電。為了保證能夠長時間玩遊戲,他買了很多5號電池,這些電池的生產商不同,質量也有差異,因而使用壽命也有所不同,有的能使用5個小時,有的可能就只能使用3個小時。顯然如果他只有兩個電池乙個能用5小時乙個能用3小時,那麼他只能玩3個小時的遊戲,有乙個電池剩下的電量無法使用,但是如果他有更多的電池,就可以更加充分地利用它們,比如他有三個電池分別能用3、3、5小時,他可以先使用兩節能用3個小時的電池,使用半個小時後再把其中乙個換成能使用5個小時的電池,兩個半小時後再把剩下的一節電池換成剛才換下的電池(那個電池還能用2.5個小時),這樣總共就可以使用5.5個小時,沒有一點浪費。

現在已知電池的數量和電池能夠使用的時間,請你找一種方案使得使用時間盡可能的長。

解析:這道題主要和數學有關

其實難度很簡單

但是這道題很容易被想複雜

解析也就三句:

對於每組資料只要判斷最大的那個數是不是比其餘的數的和都要大,

如果成立的話那當然就是剩下的所有電池與最大的電池車輪戰,最大值為n-1個數的和,

如果不成立的話那麼最大就是n個數的和的一半,也就是說電池電量是一定可以全部用完的。

同志們肯定都在想

怎麼把他拆分

其實沒必要

反正總能用完

如果是兩節電池放一塊的話

除以二就好了

所以資訊題有乙個隱性法則

描述越花裡胡哨的題目

越簡單他描述得花裡胡哨

都是用來忽悠你的

下面附上簡單**:

#include

#include

#include

#include

using

namespace std;

intmain()

for(

int i=

1;i<=n;i++

)printf

("%0.1f\n"

,c[i]);

return0;

}

3468 電池的壽命(貪心演算法)

總時間限制 1000ms 記憶體限制 65536kb 描述小s新買了乙個掌上遊戲機,這個遊戲機由兩節5號電池供電。為了保證能夠長時間玩遊戲,他買了很多5號電池,這些電池的生產商不同,質量也有差異,因而使用壽命也有所不同,有的能使用5個小時,有的可能就只能使用3個小時。顯然如果他只有兩個電池乙個能用5...

貪心 電池的壽命

電池的壽命 總時間限制 1000ms 記憶體限制 65536kb 描述 小s新買了乙個掌上遊戲機,這個遊戲機由兩節5號電池供電。為了保證能夠長時間玩遊戲,他買了很多5號電池,這些電池的生產商不同,質量也有差異,因而使用壽命也有所不同,有的能使用5個小時,有的可能就只能使用3個小時。顯然如果他只有兩個...

電池的壽命(貪心)

電池的壽命 總時間限制 1000ms 記憶體限制 65536kb 描述 小s新買了乙個掌上遊戲機,這個遊戲機由兩節5號電池供電。為了保證能夠長時間玩遊戲,他買了很多5號電池,這些電池的生產商不同,質量也有差異,因而使用壽命也有所不同,有的能使用5個小時,有的可能就只能使用3個小時。顯然如果他只有兩個...