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