藍橋杯演算法提高 快樂司機

2021-07-26 07:47:58 字數 1088 閱讀 9788

原題:

演算法提高 快樂司機  

時間限制: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 問題描述 嘟嘟嘟嘟嘟嘟 喇叭響我是汽車小司機 我是小司機 我為祖國運輸忙 運輸忙 這是兒歌 快樂的小司機 話說現在當司機光有紅心不行,還要多拉快跑。多拉不是超載,是要讓所載貨物價值最大,特別是在當前油價日新月異的時候。司機所拉貨物為散貨,如大...