複雜DP 1226 包子湊數問題

2021-10-04 10:17:30 字數 636 閱讀 8709

小明幾乎每天早晨都會在一家包子鋪吃早餐。

他發現這家包子鋪有 n 種蒸籠,其中第 i 種蒸籠恰好能放 ai 個包子。

每種蒸籠都有非常多籠,可以認為是無限籠。

每當有顧客想買 x 個包子,賣包子的大叔就會迅速選出若干籠包子來,使得這若干籠中恰好一共有 x 個包子。

比如一共有 3 種蒸籠,分別能放 3、4 和 5 個包子。

當顧客想買 11 個包子時,大叔就會選 2 籠 3 個的再加 1 籠 5 個的(也可能選出 1 籠 3 個的再加 2 籠 4 個的)。

當然有時包子大叔無論如何也湊不出顧客想買的數量。

比如一共有 3 種蒸籠,分別能放 4、5 和 6 個包子。

而顧客想買 7 個包子時,大叔就湊不出來了。

小明想知道一共有多少種數目是包子大叔湊不出來的。

第一行包含乙個整數 n。

接下來 n 行,每行包含乙個整數 ai。

輸出乙個整數代表答案。

如果湊不出的數目有無限多個,輸出inf。

1≤n≤100,

1≤ai≤100

2

45

6
246

inf

1226 包子湊數

給出 n 個數 a i 求有多少個數不能通過這些數湊出 第一行包含乙個整數 n 接下來 n 行,每行包含乙個整數 a i 輸出乙個整數代表答案。如果湊不出的數目有無限多個,輸出inf。資料範圍 1 n 100,1 a i 100 輸入樣例1 2 45輸出樣例1 6輸入樣例2 2 46輸出樣例2 in...

hdu 1226 揹包問題解法

對於每一位數,有m種選法,dp i j 代表到達第i位時,數對n取余為j時的屬性,列舉選擇的數時候從小到大保證答案是最小解。要特別注意存在0這個數的情況,特別容易出錯。include include include include include include using namespace st...

樹上染色(樹上揹包dp 複雜度分析)

題幹 有一棵點數為 n 的樹,樹邊有邊權。給你乙個在 0 n 之內的正整數 k,你要在這棵樹中選擇 k 個點,將其染成黑色,並將其他的 n k 個點染成白色。將所有點染色後,你會獲得黑點兩兩之間的距離加上白點兩兩之間距離的和的收益。問收益最大值是多少。題解 首先,看到黑點到黑點 白點與白點,其實這就...