自助餐廳裡有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
輸出乙個正整數表示答案。
思路:該題在比賽時我是通過打表找規律的,而正確的做法是使用生成函式的一般做法,具體過程討論區已有詳解,這裡直接貼出大佬的推論:
牛客程式設計巔峰賽 共鳴問題(貪心)
現在有n個音符和m對共鳴關係,編號為1 n,每個音符自己有乙個奏響時的優美程度,共鳴關係 x,y,z 表示音符x和y同時奏響的額外優美程度是z,同時不奏響則為 z,其他情況為0。音符可以選擇奏響或者不奏響,不奏響的音符沒有優美程度。我們想知道最大的優美程度和是多少,我們不需要知道具體是哪些音符被奏響...
牛客程式設計巔峰賽S1 9
a.牛牛的字元反轉 題目描述 牛牛酷愛迴圈右移操作,但是牛牛的電腦暫存器壞掉了,無法實現正常的迴圈右移操作,只能實現區間反轉操作,現在牛牛有乙個長度為n的字串,他想進行迴圈右移k位的操作,你能告訴牛牛,他最少對這個字串進行幾次區間反轉操作能實現迴圈右移k位呢。反轉操作指字串某一區間 l,r 內的字元...
牛客 挑選方案問題(排列組合)
自助餐廳裡有5個盤子,裡面裝的都是麵包。第1個盤子裡有無限個麵包 第2個盤子裡只有1個麵包 第3個盤子裡只有4個麵包 第4個盤子裡也有無限個麵包,但必須兩個兩個地拿 第5個盤子裡也有無限個麵包,但必須5個5個地拿 給定正整數n,求有多少種正好拿出n個麵包的方案。方案a和方案b不同,當且僅當方案a存在...