POJ 2709 染料問題

2021-08-07 08:53:32 字數 893 閱讀 4921

雜貨店**一種由n(3<=n<=12)種不同顏色的顏料,每種一瓶(50ml),組成的顏料套裝。你現在需要使用這n種顏料;不但如此,你還需要一定數量的灰色顏料。雜貨店從來不**灰色顏料——也就是它不屬於這n種之一。幸運的是,灰色顏料是比較好配置的,如果你取出三種不同顏色的顏料各x ml,混合起來就可以得到xml的灰色顏料(注意不是3x)。

現在,你知道每種顏料各需要多少ml。你決定買盡可能少的「顏料套裝」,來滿足你需要的這n+1種顏料。那麼你最少需要買多少個套裝呢?

input

輸入包含若干組測試資料。每組資料一行:第乙個數n, 3<=n<=12, 含義如上;接下來n+1個數,分別表示你需要的n+1種顏料的毫公升數。最後一種是灰色。所有輸入的毫公升數<=1000.

注意:輸入中不存在每個顏料套裝的毫公升數。由題意可知,每種各50ml,即一共50n ml

output

每組資料輸出一行,最少需要的套裝數。

sample input

3 40 95 21 0

7 25 60 400 250 0 60 0 500

4 90 95 75 95 10

5 0 0 0 0 0 333

0

sample output

282

4ac**如下:

#include#include#includeusing namespace std;

int main()

if (num[tot] == 0)

}}

原理很簡單,充分利用,1mg,1mg的取,讓所需要的燃料趨於乙個均值,就可以最大程度節約燃料。

小貪心。

POJ2709 染料貪心

題意 要搭配出來n種顏料,每種顏料要用mi公升,除了這n種顏色還有乙個合成灰色的毫公升數,灰色是由三種不同的顏色合成的,三種m m m 的不同顏色能合成m公升灰色,然後問你滿足要求至少要多少盒顏色,這個1盒的定義是 一盒裡面有n種顏色,每種50ml.思路 先把所有的這n中顏色的最小需要合數求出來,然...

POJ 2709 顏料盒數量 貪心法

這麼多天第一次1ac,雖然題目不難,但是心裡還是挺高興 演算法思路 先根據純色顏料中的最大者求出至少需要的顏料盒數,然後用剩餘的顏料來配gray,配的時候要1ml 1ml的配gray顏料,通過不斷重新從大到小排序,每次從前三種顏料去1ml配出1mlgray顏料,配之前判斷下第3種顏料是否還有剩餘,沒...

POJ 2709 顏料盒數量 貪心法

這麼多天第一次1ac,雖然題目不難,但是心裡還是挺高興 演算法思路 先根據純色顏料中的最大者求出至少需要的顏料盒數,然後用剩餘的顏料來配gray,配的時候要1ml 1ml的配gray顏料,通過不斷重新從大到小排序,每次從前三種顏料去1ml配出1mlgray顏料,配之前判斷下第3種顏料是否還有剩餘,沒...