原題:
演算法提高 快樂司機
時間限制:1.0s 記憶體限制:256.0mb
問題描述
"嘟嘟嘟嘟嘟嘟
喇叭響我是汽車小司機
我是小司機
我為祖國運輸忙
運輸忙"
這是兒歌「快樂的小司機」。話說現在當司機光有紅心不行,還要多拉快跑。多拉不是超載,是要讓所載貨物價值最大,特別是在當前油價日新月異的時候。司機所拉貨物為散貨,如大公尺、麵粉、沙石、泥土......
現在知道了汽車核載重量為w,可供選擇的物品的數量n。每個物品的重量為gi,價值為pi。求汽車可裝載的最大價值。(n<10000,w<10000,0輸入格式
輸入第一行為由空格分開的兩個整數n w
第二行到第n+1行,每行有兩個整數,由空格分開,分別表示gi和pi
輸出格式
最大價值(保留一位小數)
樣例輸入
5 36
99 87
68 36
79 43
75 94
7 35
樣例輸出
71.3
解釋:先裝第5號物品,得價值35,占用重量7
再裝第4號物品,得價值36.346,占用重量29
最後保留一位小數,得71.3
思路:貪心,用乙個結構體儲存每個物品的價值,占用重量和單位價值。然後重寫cmp函式利用sort函式進行排序(以單位價值為比較條件)。再從單位價值最高的開始裝,直到裝不下為止。
**:
#include #include #include using namespace std;
typedef struct nodenode;
bool cmp(node a,node b)
int main()
sort(t,t+n,cmp);
double sum = 0;//當前累積總價值
int num = 0;//當前累積總重量
int i = 0;//計數
while(1)
else//如果不會超出
}printf("%.1lf",sum);
return 0;
}
藍橋杯 演算法提高 快樂司機
演算法提高 快樂司機 時間限制 1.0s 記憶體限制 256.0mb 問題描述 嘟嘟嘟嘟嘟嘟 喇叭響我是汽車小司機 我是小司機 我為祖國運輸忙 運輸忙 這是兒歌 快樂的小司機 話說現在當司機光有紅心不行,還要多拉快跑。多拉不是超載,是要讓所載貨物價值最大,特別是在當前油價日新月異的時候。司機所拉貨物...
藍橋杯 演算法提高 快樂司機
問題描述 嘟嘟嘟嘟嘟嘟 喇叭響我是汽車小司機 我是小司機 我為祖國運輸忙 運輸忙 這是兒歌 快樂的小司機 話說現在當司機光有紅心不行,還要多拉快跑。多拉不是超載,是要讓所載貨物價值最大,特別是在當前油價日新月異的時候。司機所拉貨物為散貨,如大公尺 麵粉 沙石 泥土.現在知道了汽車核載重量為w,可供選...
藍橋杯演算法提高快樂司機
資源限制 時間限制 1.0s 記憶體限制 256.0mb 問題描述 嘟嘟嘟嘟嘟嘟 喇叭響我是汽車小司機 我是小司機 我為祖國運輸忙 運輸忙 這是兒歌 快樂的小司機 話說現在當司機光有紅心不行,還要多拉快跑。多拉不是超載,是要讓所載貨物價值最大,特別是在當前油價日新月異的時候。司機所拉貨物為散貨,如大...