動態規劃 求有多少種不同的湊法

2021-07-30 01:51:12 字數 547 閱讀 5718

乙個包可以裝mg的東西,有n個物品,體積分別是a1,a2....an,要求選擇的物品體積正好是m並且每個物品只能選擇一次,一共有多少種不同的湊法?

思路:如果m是0,則乙個物品都不用選,return 1;

如果所有的物品都選上了,還不夠m就return 0;

否則  如果不選第n個物品則選n-1個物品組成m加上選了第n個物品,那麼就只需要選n0-1個組成m-a[n];

遞迴程式如下:

#includeusing namespace std;

int a[30];

int n;

int f(int m,int n)

int main()

cout<

好像還有點問題,待解決........

#include#includeusing namespace std;

int a[30],f[40][30];

int n;

int main()

f[0][0]=1;

for(int m=1;m<=40;++m)

} cout<

409,動態規劃求不同路徑

乙個機械人位於乙個 m x n 網格的左上角 起始點在下圖中標記為 start 機械人每次只能向下或者向右移動一步。機械人試圖達到網格的右下角 在下圖中標記為 finish 問總共有多少條不同的路徑?例如,上圖是乙個7 x 3 的網格。有多少可能的路徑?示例 1 輸入 m 3,n 2 輸出 3 解釋...

有多少不同的面值組合

1 題目要求 題目描述 某人有8角的郵票5張,1元的郵票4張,1元8角的郵票6張,用這些郵票中的一張或若干張可以得到多少種不同的郵資?輸入 題目沒有任何輸入 輸出 按題目的要求輸出可以得到的不同郵資的數目 2 分析這個題目,可以將其歸結為陣列去重的問題。可以使用計數排序來實現。題目中總共的面值為 8...

1087 有多少不同的值

1087 有多少不同的值 20 分 當自然數 n 依次取 1 2 3 n 時,算式 n 2 n 3 n 5 有多少個不同的值?注 x 為取整函式,表示不超過 x 的最大自然數,即 x 的整數部分。輸入給出乙個正整數 n 2 n 10 4 在一行中輸出題面中算式取到的不同值的個數。20171480 i...