繼上次之後,小明又對你的竹棒做了壞壞的事情,他直接把你的竹棒打斷成 $N$ 段,你氣到快昏倒了。
十分喜愛棒棒的你,決定要用膠帶把這些棒棒黏回去,只要將兩個斷掉的竹棒頭尾相接用膠帶黏起來就好了。
但是黏接不同長度的竹棒需要不同長度的膠帶,當你想將兩根竹棒黏起來時,會需要用到等同兩根竹棒黏起來長度的膠帶,
例如你想將長度為 $3$ 跟 $5$ 的竹棒黏起來時,會需要用到長度為 $8$ 的膠帶。
你想知道在不破壞這些竹棒順序的情況下(也就是說每次只能將相鄰的竹棒黏起來),最少需要用到多少長度的膠帶。
假設你的竹棒被打成 $4$ 段,每段長度依序是 $2,3,7,4$ ,
則有以下方案能將木棒黏回:
方案一
先將 $3,7$ 黏起來得到 $10$ ,用掉長度為 $10$ 的膠帶,
再將 $2,10$ 黏起來得到 $12$ ,用掉長度為 $12$ 的膠帶,
最後將 $12,4$ 黏起來得到 $16$ ,用掉長度為 $16$ 的膠帶。
總共花費 $10+12+16=38$ 長度的膠帶。
方案二
先將 $2,3$ 黏起來得到 $5$ ,用掉長度為 $5$ 的膠帶,
再將 $7,4$ 黏起來得到 $11$ ,用掉長度為 $11$ 的膠帶,
最後將 $5,11$ 黏起來得到 $16$ ,用掉長度為 $16$ 的膠帶。
總共花費 $5+11+16=32$ 長度的膠帶。
方案三
先將 $2,3$ 黏起來得到 $5$ ,用掉長度為 $5$ 的膠帶,
再將 $5,7$ 黏起來得到 $12$ ,用掉長度為 $12$ 的膠帶,
最後將 $12,4$ 黏起來得到 $16$ ,用掉長度為 $16$ 的膠帶。
總共花費 $5+12+16=33$ 長度的膠帶。
在這之中方案二可以用最少長度的膠帶,因此答案為 $32$ (共六種黏接順序,各位可以自行嘗試, $32$ 為六種中最好的方案使用的膠帶長度)。
第一行有一個正整數 $N(N\leq10^ 3)$ 。
接下來一行有 $N$ 個正整數,第 $i$ 個正整數 $a_i(a_i\leq10^ 6)$ 代表第 $i$ 段竹棒的長度。
請輸出最少需要用到多少長度的膠帶。
No. | Testdata Range | Constraints | Score |
---|---|---|---|
1 | 0~6 | 每段竹棒長度均相同 | 19 |
2 | 0~18 | 無特別限制 | 81 |
No. | Time Limit (ms) | Memory Limit (KiB) | Output Limit (KiB) | Subtasks |
---|---|---|---|---|
0 | 2500 | 65536 | 65536 | |
1 | 2500 | 65536 | 65536 | |
2 | 2500 | 65536 | 65536 | |
3 | 2500 | 65536 | 65536 | |
4 | 2500 | 65536 | 65536 | |
5 | 2500 | 65536 | 65536 | |
6 | 2500 | 65536 | 65536 | |
7 | 2500 | 65536 | 65536 | |
8 | 2500 | 65536 | 65536 | |
9 | 2500 | 65536 | 65536 | |
10 | 2500 | 65536 | 65536 | |
11 | 2500 | 65536 | 65536 | |
12 | 2500 | 65536 | 65536 | |
13 | 2500 | 65536 | 65536 | |
14 | 2500 | 65536 | 65536 | |
15 | 2500 | 65536 | 65536 | |
16 | 2500 | 65536 | 65536 | |
17 | 2500 | 65536 | 65536 | |
18 | 2500 | 65536 | 65536 |