電池壽命 證明

2021-10-19 09:27:26 字數 1292 閱讀 3959

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

首先我先吐槽一下已經存在的許多題解:題目標個「貪心」,可是解題時根本沒用貪心,都是直接用的結論。如果有人知道這題怎麼用貪心來解,還望告知一下。(翻了這麼多題解,乙個真正用貪心法的都沒找到,氣死我了。)

① 先將電池按時長盡可能平均分為兩組(兩組差值最小)

\text

① 先將電池按時長盡可能平均分為兩組(兩組差值最小)

\left\ \text \\ \text \\ \text \\ \end \right.

②⎩⎨⎧​1

》如果恰好均分(差值為

0),則最大

時長=所

有電池總

時長/2

2》無法恰好均分時,如果較大一邊的電池有兩個及以上,則最大

時長=所

有電池總

時長/2

3》無法恰好均分時,如果較大一邊的電池只有乙個,則最大

時長=較

小一邊電

池總時長

​1》正確性顯然;下面同時證明 2》3》:

當無法恰好均分時, 記較大的一邊與較小一邊的差為 xxx:

則較大一邊中的任意電池時長不小於 x

xx,否則總可以將這個電池放入另一邊,使得兩邊差值變小,從而原先的差值並不是最小,與假設矛盾。

既然較大一邊中任意一塊電池時長都不小於 x

xx,那我總可以任選兩塊電池,一起使用 x/2

x/2x/

2 時長,這樣,較大一邊的總時長就會降低 x

xx,兩邊總時長相等,變為 1》的情況。

貪心 電池的壽命

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

電池的壽命(貪心)

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

1229 電池的壽命

1229 電池的壽命 時間限制 1000 ms 記憶體限制 65536 kb 提交數 3569 通過數 1970 題目描述 小s新買了乙個掌上遊戲機,這個遊戲機由兩節5號電池供電。為了保證能夠長時間玩遊戲,他買了很多5號電池,這些電池的生產商不同,質量也有差異,因而使用壽命也有所不同,有的能使用5個...