神奇的口袋

2021-09-25 11:55:15 字數 618 閱讀 5098

有乙個神奇的口袋,總的容積是40,用這個口袋可以變出一些物品,這些物品的總體積必須是40.

john現在有n(1<=n<=20)個想要得到的物品,每個物品的體積分別是a1,a2....an.

john 可以從這些物品中選擇一些,如果選出的物體的總體積是40,那麼利用這個神奇的口袋,john就可以得到這些物品。

現在的問題是,john有多少種不同的選擇物品的方式。

輸入:輸入的第一行是正整數n(1<=n<=20),表示不同的物品的數目。

接下來的n行,每行有乙個1到40之間的正整數,分別給出a1,a2,...,an的值。

輸出:輸出不同的選擇物品的方式的數目.

輸入樣例:320

2020

輸出樣例:

3列舉的解法:

列舉每個物品選還是不選,共有2^20種情況。

/*** 遞迴解法

*/#include using namespace std;

int a[30];

int n;

int ways(int w,int k)

int main()

ways[0][0]=1;

for(int w=1;w<=40;w++)}}

cout<

神奇的口袋

原題 有乙個神奇的口袋,總的容積是40,用這個口袋可以變出一些物品,這些物品的總體積必須是40。john現在有n個想要得到的物品,每個物品的體積分別是a1,a2 an。john可以從這些物品中選擇一些,如果選出的物體的總體積是40,那麼利用這個神奇的口袋,john就可以得到這些物品。現在的問題是,j...

神奇的口袋

時間限制 1 sec 記憶體限制 32 mb 有乙個神奇的口袋,總的容積是40,用這個口袋可以變出一些物品,這些物品的總體積必須是40。john現在有n個想要得到的物品,每個物品的體積分別是a1,a2 an。john可以從這些物品中選擇一些,如果選出的物體的總體積是40,那麼利用這個神奇的口袋,jo...

神奇的口袋

於牛客考研真題 題目描述 有乙個神奇的口袋,總的容積是40,用這個口袋可以變出一些物品,這些物品的總體積必須是40。john現在有n個想要得到的物品,每個物品的體積分別是a1,a2 an。john可以從這些物品中選擇一些,如果選出的物體的總體積是40,那麼利用這個神奇的口袋,john就可以得到這些物...