e020: P-1-3. 棍子中點切割
Tags : 遞迴
Accepted rate : 11人/11人 ( 100% ) [非即時]
評分方式:
Tolerant

最近更新 : 2023-12-28 22:51

Content

有一台切割棍子的機器,每次將一段棍子會送入此台機器時,機器會偵測棍子上標示的可切割點,然後計算出最接近中點的切割點,並於此切割點將棍子切割成兩段,切割後的每一段棍子都會被繼續送入機器進行切割,直到每一段棍子都沒有切割點為止。請注意,如果最接近中點的切割點有二,則會選擇座標較小的切割點。每一段棍子的切割成本是該段棍子的長度,輸入一根長度 L 的棍子上面 N 個切割點位置的座標,請計算出切割總成本。

Time limit: 1 秒

Input

第一行有兩個正整數 N 與 L。第二行有 N 個正整數,依序代表由小到大的 切割點座標 p[1]~p[N],數字間以空白隔開,座標的標示的方式是以棍子左端為 0, 而右端為 L。N <= 5e4,L < 1e9。

Output

切割總成本點。

Sample Input
4 10
1 2 4 6
Sample Output
22
測資資訊:
記憶體限制: 64 MB
公開 測資點#0 (20%): 1.0s , <1M
公開 測資點#1 (20%): 1.0s , <1M
公開 測資點#2 (20%): 1.0s , <1M
公開 測資點#3 (20%): 1.0s , <1M
公開 測資點#4 (20%): 1.0s , <1M
Hint :

範例說明:第一次會切割在座標 4 的位置,切成兩段 [0, 4], [4, 10],成本 10;

[0, 4] 切成 [0, 2] 與 [2, 4],成本 4;

[4, 10] 切成 [4, 6] 與 [6, 10],成本 6;

[0, 2] 切成 [0, 1] 與 [1, 2];成本 2;

總成本 10+4+6+2 = 22

Tags:
遞迴
出處:
AP325 [管理者:
mcjksieu005 (mcjksieu005)
]


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