BZOJ3028 食物(生成函式)

2022-03-20 06:31:12 字數 607 閱讀 2438

乙個人要帶\(n\)個物品,共有\(8\)種物品,每種的限制分別如下:

偶數個;0/1個;0/1/2個;奇數個;

4的倍數個;0/1/2/3個;0/1個;3的倍數個。

求方案數。

\(n<=10^\)

對於八個物品的限制,分別構造生成函式,然後乘起來就是我們要的解。

化簡後得到$$f(x)=\frac=x(1+x+x2+...)^4$$

現在考慮求第\(n\)項係數。考慮第\(n\)項的組合意義,即將\(n\)劃分為\(4\)個自然數的方案數。

所以第\(n\)項為\(c_^3\),時間複雜度\(o(1)\)

#include#include#include#include#include#include#include#include#include#includeusing namespace std;

#define ll long long

#define rg register

#define mod 10007

#define inv 1668

inline int read()

int main()

BZOJ 3028 食物 生成函式

明明這次又要出去旅遊了,和上次不同的是,他這次要去宇宙探險!我們暫且不討論他有多麼nc,他又幻想了他應該帶一些什麼東西。理所當然的,你當然要幫他計算攜帶n件物品的方案數。他這次又準備帶一些受歡迎的食物,如 蜜桃多啦,雞塊啦,承德漢堡等等當然,他又有一些稀奇古怪的限制 每種食物的限制如下 承德漢堡 偶...

BZOJ3028 食物(生成函式)

顯然構造出生成函式 則有f x 1 x2 x4 1 x 1 x x2 x x3 x5 1 x4 x8 1 x x2 x3 1 x 1 x3 x6 化為有限,則有f x x 1 x 2 1 x x2 1 x x2 x3 1 x2 2 1 x3 1 x4 x 1 x x2 1 x 1 x 2 1 x3 ...

bzoj3028 食物(生成函式 Lucas)

明明這次又要出去旅遊了,和上次不同的是,他這次要去宇宙探險!我們暫且不討論他有多麼nc,他又幻想了他應該帶一些什麼東西。理所當然的,你當然要幫他計算攜帶n件物品的方案數。他這次又準備帶一些受歡迎的食物,如 蜜桃多啦,雞塊啦,承德漢堡等等當然,他又有一些稀奇古怪的限制 每種食物的限制如下 承德漢堡 偶...