牛客 挑選方案問題(排列組合)

2021-10-12 16:35:31 字數 1036 閱讀 8137

自助餐廳裡有5個盤子,裡面裝的都是麵包。

第1個盤子裡有無限個麵包;

第2個盤子裡只有1個麵包;

第3個盤子裡只有4個麵包;

第4個盤子裡也有無限個麵包,但必須兩個兩個地拿;

第5個盤子裡也有無限個麵包,但必須5個5個地拿;

給定正整數n,求有多少種正好拿出n個麵包的方案。

方案a和方案b不同,當且僅當方案a存在從某個盤子裡拿出麵包的數量與方案b中對應盤子拿出的數量不同。

示例1輸入1

返回值3

說明有3種方案:

在第乙個盤子拿乙個。

在第二個盤子拿乙個。

在第三個盤子拿乙個。

示例2輸入

2返回值6說明

有6種方案:

在第乙個盤子拿2個。

在第乙個盤子拿1個,第二個盤子拿1個。

在第乙個盤子拿1個,第三個盤子拿1個。

在第二個盤子拿1個,第三個盤子拿1個。

在第三個盤子拿2個。

在第四個盤子拿2個。

(請注意由於第四個盤子裡只能兩個兩個拿,所以必須拿偶數個)

備註:n<=10^

9資料僅包含乙個正整數n

輸出乙個正整數表示答案。

總方案數為 1+2

+...

+(n+

1)=(

n+2)

∗(n+

1)/2

=cn+

22

1+2+...+(n+1) = (n+2)*(n+1)/2=c_^2

1+2+..

.+(n

+1)=

(n+2

)∗(n

+1)/

2=cn

+22​

class

solution

};

我的csdn部落格位址

排列組合問題

若有一串字母abc,進行全排列,有六種方法,3的階層,321,為什麼是這樣呢,我們根據 看思路 這之間會涉及遞迴,回溯 將abc看成陣列,a 0 a,a 1 b,a 2 c 下文中用a0代替a,a1代替b,a2代替c 排列的過程就是交換位置的過程 1 先對a進行交換 即k 0時 a0和a0自己交換 ...

排列組合問題

基本的排列組合問題,就是高中數學的內容,怎麼用程式語言輸出所有排列呢?我們手寫的過程,它應該是乙個遞迴的過程,而不適合用for wihle迴圈。如果資料結構學的紮實,可以發現這是乙個樹結構,遍歷所有的葉子節點就能夠得到全排列。說到遞迴,應該向大家隆重介紹一下數學歸納法的思想,應為都有乙個問題規模n。...

排列組合問題

這資料寫個暴力都拿不了30分 t t。c n,i c n,i c n,i c n,n i 結合現實意義,在n個裡面選 i 個,再在n個裡面選n i個的方案數。就等價於在前n個中選 i 個,在後n各種選n i個。而且i 0 n 在2 n各種選n個。那麼 c 2 n,n 答案要對1000000007取模...