Luogu P1282 多公尺諾骨牌 DP。。揹包?

2022-03-30 08:04:45 字數 449 閱讀 9220

揹包。。。差不多。。qwq

設f[i]為達到差值為i的狀態需要多少次,那就很顯然了; 注意區分正負不同的代價的迴圈方向

技巧:如果不想改負數的話,那可以移動一下陣列下標,用乙個新的指標指向原來的陣列

#include#include

#include

#define r register int

const

int lim=6000

;using

namespace

std;

inline

intg()

intn,sum;

int s[1010],d[13010],*f=d+lim;

inline

int abs(int x)

signed main()

}

2019.04.29

Luogu P1282 多公尺諾骨牌

題目描述傳送門 多公尺諾骨牌有上下2個方塊組成,每個方塊中有1 6個點。現有排成行的上方塊中點數之和記為s1,下方塊中點數之和記為s2,它們的差為 s1 s2 例如在圖8 1中,s1 6 1 1 1 9,s2 1 5 3 2 11,s1 s2 2。每個多公尺諾骨牌可以旋轉180 使得上下兩個方塊互換...

luogu P1282 多公尺諾骨牌

線性dp,需要一點理解。可以模擬揹包問題,此時的狀態不是揹包容量而是差值。f i j 代表對前 i 個牌在 j 的差值下 最小的翻動數。有遞推式 f i j min f i 1 j a i b i 1 f i 1 j b i a i a,b 為上下牌面數 ps 顯然 j 差值可能為負,程式設計時加個...

luogu P1282 多公尺諾骨牌

多公尺諾骨牌有上下2個方塊組成,每個方塊中有1 6個點。現有排成行的 上方塊中點數之和記為s1,下方塊中點數之和記為s2,它們的差為 s1 s2 例如在圖8 1中,s1 6 1 1 1 9,s2 1 5 3 2 11,s1 s2 2。每個多公尺諾骨牌可以旋轉180 使得上下兩個方塊互換位置。程式設計...