搬寢室《九度OJ

2022-08-04 23:45:16 字數 919 閱讀 4231

題目描述:搬寢室是很累的,xhd深有體會.時間追述2023年7月9號,那天xhd迫於無奈要從27號樓搬到3號樓,因為10號要封樓了.看著寢室裡的n件物品,xhd開始發呆,因為n是乙個小於2000的整數,實在是太多了,於是xhd決定隨便搬2*k件過去就行了.但還是會很累,因為2*k也不小是乙個不大於n的整數.幸運的是xhd根據多年的搬東西的經驗發現每搬一次的疲勞度是和左右手的物品的重量差的平方成正比(這裡補充一句,xhd每次搬兩件東西,左手一件右手一件).例如xhd左手拿重量為3的物品,右手拿重量為6的物品,則他搬完這次的疲勞度為(6-3)^2 = 9.現在可憐的xhd希望知道搬完這2*k件物品後的最佳狀態是怎樣的(也就是最低的疲勞度),請告訴他吧。

輸入:每組輸入資料有兩行,第一行有兩個數n,k(2<=2*k<=n<2000).第二行有n個整數分別表示n件物品的重量(重量是乙個小於2^15的正整數).

輸出:對應每組輸入資料,輸出資料只有乙個表示他的最少的疲勞度,每個一行.

樣例輸入:2 1

1 3樣例輸出:4

本題考察的是dp,這基本算是我做的dp的開始吧,要是自己思考的話估計就麻煩大了,幸好可以學習別人的,在這不多做解釋了,因為解釋不了,具體解釋可以查閱王道2023年教程

1 #include 2 #include 3

using

namespace

std;45

int buf[2001];6

int d[1001][2001];7

intmain()

27 printf("

%d\n

", d[k][n]);28}

29return0;

30 }

題目1107 搬水果 九度OJ

題目1107 搬水果 時間限制 1 秒 記憶體限制 32 兆 特殊判題 否 提交 7871 解決 2923 題目描述 在乙個果園裡,小明已經將所有的水果打了下來,並按水果的不同種類分成了若干堆,小明決定把所有的水果合成一堆。每一次合併,小明可以把兩堆水果合併到一起,消耗的體力等於兩堆水果的重量之和。...

題目1452 搬寢室

題目1452 搬寢室 時間限制 1 秒 記憶體限制 128 兆 特殊判題 否 提交 1701 解決 690 題目描述 搬寢室是很累的,xhd深有體會.時間追述2006年7月9號,那天xhd迫於無奈要從27號樓搬到3號樓,因為10號要封樓了.看著寢室裡的n件物品,xhd開始發呆,因為n是乙個小於200...

九度 1107 搬水果

題目描述 在乙個果園裡,小明已經將所有的水果打了下來,並按水果的不同種類分成了若干堆,小明決定把所有的水果合成一堆。每一次合併,小明可以把兩堆水果合併到一起,消耗的體力等於兩堆水果的重量之和。當然經過 n 1 次合併之後,就變成一堆了。小明在合併水果時總共消耗的體力等於每次合併所耗體力之和。假定每個...