1.某工廠需要加工n批貨物,但同一時(shí)間只能加工同一批貨物。貨物的信息包含送達(dá)時(shí)間、加工時(shí)間和是否加急(0表示不加急,1表示加急),每批貨物的送達(dá)時(shí)間各不相同,已送達(dá)的貨物按照是否加急分別排隊(duì),先到達(dá)先入隊(duì),每次加工都優(yōu)先處理加急貨物隊(duì)列,選取隊(duì)首貨物出隊(duì)進(jìn)行加工(同一時(shí)刻出現(xiàn)入隊(duì)和出隊(duì)時(shí),先處理入隊(duì))。求出所有貨物的平均等待時(shí)長(zhǎng),其中每批貨物等待時(shí)長(zhǎng)為其開始加工的時(shí)間與送達(dá)時(shí)間的時(shí)間差。
(1)由題意可知,圖中待加工貨物A、B、C、D、E的加工順序應(yīng)為A-C-B-E-D。A、C、B、E的等待時(shí)長(zhǎng)分別為0、0、2、1、那么D等待時(shí)長(zhǎng)為:
。
貨物編號(hào) |
送達(dá)時(shí)間 |
加工時(shí)間 |
是否加急 |
A |
0 |
2 |
0 |
B |
1 |
3 |
0 |
C |
2 |
1 |
1 |
D |
4 |
2 |
0 |
E |
5 |
2 |
1 |
(2)實(shí)現(xiàn)模擬加工過程并計(jì)算平均等待時(shí)長(zhǎng)的部分Python程序段如下,請(qǐng)?jiān)趧澗€處填入合適代碼。
讀取n批待加工貨物信息存于列表data,data中的數(shù)據(jù)已經(jīng)按貨物送達(dá)時(shí)間升序排列。例如存儲(chǔ)題中實(shí)例的數(shù)據(jù):
(3)加框處代碼錯(cuò)誤,請(qǐng)改正。