a299. 蛋糕師傅
Tags :
Accepted rate : 0人/0人 (0%) [非即時]
評分方式:
Tolerant

最近更新 : 2023-04-23 23:24

Content

有一家蛋糕店以客製化蛋糕聞名,店內有一個蛋糕師傅以及一台烤箱。
每一個蛋糕都需要經過師傅的製作,再送進烤箱烘烤,因為每一筆訂單都是客製化的,需要不同的製作時間與烘烤時間,有些蛋糕甚至可能不需要烘烤。
師傅跟烤箱從 $t = 0$ 時開始工作,所有訂單會依照點餐的順序製作,因為只有一個蛋糕師傅跟一個烤箱,所以同一時間只能製作與烘烤一個蛋糕,烘烤蛋糕的同時,師傅可以製作其他蛋糕。

今天收到了 $n$ 筆訂單,為了怕客人等太久,請你幫蛋糕店寫一個程式,可以在每一筆訂單下訂後告知完成時間。

下圖為範例一的說明:

   

要計算這三個任務的完成時間,程序應該執行以下操作:

  • 訂單 1 準備在 $t = 0$ 時開始製作。完成時間為 $(8 + 5) = 13$。
  • 訂單 2 在 $t = 15$ 時到達,所以它準備在 $t = 15$ 時開始。蛋糕師傅跟烤箱都可用,因此它的完成時間是 (15 + 10 + 5) = 30。
  • 訂單 3 在 $t = 20$ 時到達。它不能在 $t = 20$ 在開始製作,因為師傅正在製作訂單 2。訂單 3 需要等到師傅製作完成並且送進烤箱時才可以開始製作。因此, $t = 25$ 時師傅開始製作訂單 3。師傅製作完後,無法立即送進烤箱烘烤。它必須等待烤箱烤完 訂單 2,也就是 $t = 30$時。因此,訂單 3 的完成時間為 (30+10) = 40。
Input

第一行輸入訂單的數量 $n$,接下來 $n$ 行依點餐順序輸入每筆訂單的點餐時間製作時長以及烘烤時長

題目保證後面訂單的點餐時間不小於前面的訂單,且訂單數量不超過 $20000$ 筆,且所有數字(包含完成時間)不超過 $2^{31}-1$。

 

子題配分:

  • (20%) 所有點餐時間皆為 $0$,且所有蛋糕皆不須烘烤(烘烤時長為0),(如範例2)
  • (40%) 所有點餐時間皆為 $0$,如範例3
  • (40%) 無其他限制,如範例4
Output

輸出每筆訂單做完的時間。

Sample Input #1
3
0 8 5
15 10 5
20 2 10
Sample Output #1
13
30
40
Sample Input #2
5
0 2 0
0 4 0
0 6 0
0 8 0
0 4 0
Sample Output #2
2
6
12
20
24
Sample Input #3
5
0 2 1
0 3 2
0 7 1
0 8 3
0 1 10
Sample Output #3
3
7
13
23
33
Sample Input #4
5
1 2 1
3 3 2
5 7 1
7 8 3
9 1 10
Sample Output #4
4
8
14
24
34
Sample Input #5
10
23 38 89
116 98 15
214 87 33
305 98 59
332 57 48
427 4 6
488 69 18
563 23 67
634 42 72
704 22 44
Sample Output #5
150
229
334
462
510
516
575
653
748
792
Sample Input #6
8
0 81 85
0 5 54
0 18 5
0 81 36
0 80 41
0 20 6
0 67 42
0 4 76
Sample Output #6
166
220
225
261
306
312
394
470
測資資訊:
記憶體限制: 256 MB
公開 測資點#0 (10%): 1.0s , <1K
公開 測資點#1 (10%): 1.0s , <1K
公開 測資點#2 (10%): 1.0s , <1M
公開 測資點#3 (10%): 1.0s , <1K
公開 測資點#4 (10%): 1.0s , <1M
公開 測資點#5 (10%): 1.0s , <1K
公開 測資點#6 (10%): 1.0s , <1M
公開 測資點#7 (10%): 1.0s , <1M
公開 測資點#8 (10%): 1.0s , <1M
公開 測資點#9 (10%): 1.0s , <1M
Hint :

這一題不需要用到陣列喔!

只要用兩個變數紀錄蛋糕師傅跟烤箱完成工作的時間,再隨著每筆訂單更新這兩個變數

Tags:
出處:
judgegirl [管理者: ktlai(測試員) ]


ID User Problem Subject Hit Post Date
沒有發現任何「解題報告」