r907. PD. Melons
標籤 : DP contest Zaim
通過比率: 1人/ 1人 ( 100%) [非即時]
評分方式:
Tolerant

最近更新 : 2026-02-17 18:21

內容

在 EGOI 農場,員工們正在接收和運送甜瓜。今天早上,收到了 N 個甜瓜。這些甜瓜從 1 到 N 編號。甜瓜 i ( 1 ≤ i ≤ N )的重量為 A_i 。

Rie 在 EGOI 農場工作,她的工作是把甜瓜裝箱。現在,EGOI 農場會決定一個整數 x ( 1 ≤ x ≤ N )。之後,她會依序收到甜瓜 x, x + 1, ... , N 。她需要重複以下步驟將它們裝箱。

  • Rie 會拿一個空箱子。她會重複把甜瓜放進箱子裡。但是,如果放完下一個甜瓜後,箱子裡甜瓜的總重量超過 L ,她就不會把這個甜瓜放進箱子裡。然後,她會把箱子寄出去。 (在這種情況下,她會把下一個甜瓜放進一個新的箱子裡。)

她把甜瓜 N 裝進盒子裡後,就會把盒子寄出去,她的工作就完成了。

Rie 想為她的工作做好準備,以應對所有可能的 x 值。編寫一個程序,給定甜瓜的資訊和箱子的最大可能重量 L ,計算她運送的箱子數量以及最後一個箱子中甜瓜的總重量,以應對所有可能的 x 值。

輸入說明

從標準輸入讀取以下資料。給定的值均為整數。

 N L 

 A_1 

 A_2 

  ....

 A_N 

  •  1 ≤ N ≤ 2*10^5.
  •  1 ≤ L ≤ 10^9.
  •  1 ≤ A_i ≤ L (1 ≤ i ≤ N).
輸出說明

將 N 行輸出到標準輸出。輸出的第 i 行( 1 ≤ i ≤ N )對應於情況 x = i 。若情況為 x = i ,則此行應包含已出貨的箱子數量和最後一個箱子中瓜的總重量。這兩個值之間應以空格分隔。

範例輸入 #1
7 100
20
80
50
40
20
80
10
範例輸出 #1
4 10
4 10
3 10
2 90
2 10
1 90
1 10
範例輸入 #2
6 160
63
63
63
63
63
63
範例輸出 #2
3 126
3 63
2 126
2 63
1 126
1 63
範例輸入 #3
5 20
7
10
4
6
8
範例輸出 #3
2 18
2 8
1 18
1 14
1 8
測資資訊:
記憶體限制: 512 MB
不公開 測資點#0 (5%): 0.1s , <1M
不公開 測資點#1 (5%): 0.1s , <10M
不公開 測資點#2 (5%): 0.1s , <10M
不公開 測資點#3 (5%): 0.1s , <1M
不公開 測資點#4 (5%): 0.1s , <1M
不公開 測資點#5 (5%): 0.1s , <10M
不公開 測資點#6 (5%): 0.1s , <1M
不公開 測資點#7 (5%): 0.1s , <10M
不公開 測資點#8 (5%): 0.1s , <1M
不公開 測資點#9 (5%): 0.1s , <10M
不公開 測資點#10 (5%): 0.1s , <10M
不公開 測資點#11 (5%): 0.1s , <10M
不公開 測資點#12 (5%): 0.1s , <1M
不公開 測資點#13 (5%): 0.1s , <10M
不公開 測資點#14 (5%): 0.1s , <1M
不公開 測資點#15 (5%): 0.1s , <1M
不公開 測資點#16 (5%): 0.1s , <10M
不公開 測資點#17 (5%): 0.1s , <1M
不公開 測資點#18 (5%): 0.1s , <10M
不公開 測資點#19 (5%): 0.1s , <1M
提示 :

範例一說明: 

例如,如果 x = 1 ,Rie 將如下將甜瓜裝箱。

  1. Rie 將甜瓜 1 放入一個盒子中。盒子的總重量為 20。
  2. Rie 將第二個甜瓜放入同一個箱子中。箱子的總重量為 100。
  3. 如果 Rie 將 3 號甜瓜放入同一個箱子,則箱子的總重量將為 150。因此,Rie 將原始箱子寄出,並將 3 號甜瓜放入一個新箱子。新箱子的總重量為 50。
  4. Rie 將 4 號甜瓜放入箱中。箱子的總重量為 90。
  5. 如果 Rie 將 5 號甜瓜放入箱子,箱子的總重量將為 110。因此,Rie 將當前箱子寄出,並將 5 號甜瓜放入一個新箱子中。新箱子的總重量為 20。
  6. Rie 將 6 個甜瓜放入箱中。箱子的總重量為 100。
  7. 如果 Rie 將 7 號甜瓜放入箱子,箱子的總重量將為 110。因此,Rie 將當前箱子寄出,並將 7 號甜瓜放入一個新箱子中。新箱子的總重量為 10。
  8. 最後,Rie 寄出了目前的包裹。


如果 x = 1 ,則 Rie 出貨 4 箱,最後一箱瓜的總重量為 10。因此,依序輸出 4 和 10。這兩個值之間應以空格分隔。

範例二說明: 

例如,如果 Rie 將甜瓜 1 和 2 放入第一個箱子,將甜瓜 3 和 4 放入第二個箱子,將甜瓜 5 和 6 放入第三個箱子。 Rie 總共出貨 3 個箱子,最後一個箱子中甜瓜的總重量為 126。因此,第一行應依序輸出 3 和 126。這兩個值之間應以空格分隔。

範例三說明: 

例如,如果 Rie 將甜瓜 2、3、4 放入第一個箱子,並將甜瓜 5 放入第二個箱子,Rie 總共發貨 2 個箱子,最後一個箱子中甜瓜的總重量為 8。因此,第二行應依序輸出 2 和 8,這兩個值之間以空格分隔。

標籤:
DP contest Zaim
出處:
[管理者: chenwei98050 ... (陳維(Z)) ]

本題狀況 本題討論 排行

編號 身分 題目 主題 人氣 發表日期
沒有發現任何「解題報告」