快樂司機 python

2021-10-02 15:36:06 字數 1108 閱讀 8163

問題描述

「嘟嘟嘟嘟嘟嘟

喇叭響我是汽車小司機

我是小司機

我為祖國運輸忙

運輸忙」

這是兒歌「快樂的小司機」。話說現在當司機光有紅心不行,還要多拉快跑。多拉不是超載,是要讓所載貨物價值最大,特別是在當前油價日新月異的時候。司機所拉貨物為散貨,如大公尺、麵粉、沙石、泥土…

現在知道了汽車核載重量為w,可供選擇的物品的數量n。每個物品的重量為gi,價值為pi。求汽車可裝載的最大價值。(n<10000,w<10000,0利用貪心演算法解決部分揹包問題,可得到最優解。

def

fractional_backpack

(goods, w)

: goods.sort(key=

lambda x: x[1]

/x[0

], reverse=

true

) v =

0 m=[0

for i in

range

(len

(goods))]

for i,

(weight, prize)

inenumerate

(goods)

:if w >= weight:

v += prize

w -= weight

m[i]=1

else

: m[i]

= w / weight

v += m[i]

*prize

w =0break

return v

n,w =

map(

int,

input()

.strip(

).split())

l=[]goods=

for i in

range

(n):

gi,pi =

map(

int,

input()

.strip(

).split())

l =print

('%.1f'

%fractional_backpack(goods,w)

)

藍橋杯 快樂司機

問題描述 嘟嘟嘟嘟嘟嘟 喇叭響 我是汽車小司機 我是小司機 我為祖國運輸忙 運輸忙 這是兒歌 快樂的小司機 話說現在當司機光有紅心不行,還要多拉快跑。多拉不是超載,是要讓所載貨物價值最大,特別是在當前油價日新月異的時候。司機所拉貨物為散貨,如大公尺 麵粉 沙石 泥土 現在知道了汽車核載重量為w,可供...

演算法提高 快樂司機

演算法提高 快樂司機 時間限制 1.0s 記憶體限制 256.0mb 問題描述 嘟嘟嘟嘟嘟嘟 喇叭響我是汽車小司機 我是小司機 我為祖國運輸忙 運輸忙 這是兒歌 快樂的小司機 話說現在當司機光有紅心不行,還要多拉快跑。多拉不是超載,是要讓所載貨物價值最大,特別是在當前油價日新月異的時候。司機所拉貨物...

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

演算法提高 快樂司機 時間限制 1.0s 記憶體限制 256.0mb 問題描述 嘟嘟嘟嘟嘟嘟 喇叭響我是汽車小司機 我是小司機 我為祖國運輸忙 運輸忙 這是兒歌 快樂的小司機 話說現在當司機光有紅心不行,還要多拉快跑。多拉不是超載,是要讓所載貨物價值最大,特別是在當前油價日新月異的時候。司機所拉貨物...