日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學(xué)無(wú)先后,達(dá)者為師

網(wǎng)站首頁(yè) 編程語(yǔ)言 正文

關(guān)于不定方程解的個(gè)數(shù)的問(wèn)題

作者:lAWTYl 更新時(shí)間: 2022-07-22 編程語(yǔ)言

不定方程的解的個(gè)數(shù)

Lv0

? 首先我們看這樣一個(gè)問(wèn)題,求 ∑ i = 1 n x i = b \sum\limits_{i = 1}^n x_i = b i=1n?xi?=b 的非負(fù)整數(shù)解的個(gè)數(shù)。

? 這個(gè)問(wèn)題就非常簡(jiǎn)單啊,我們稍微把他轉(zhuǎn)化一下,這個(gè)問(wèn)題就等價(jià)于有 n n n 個(gè)小朋友分 b b b 個(gè)糖果,每個(gè)小朋友至少分到 0 0 0 個(gè)糖果(好慘啊),求分完糖果的方案數(shù)。

? 然后我們?cè)俎D(zhuǎn)化一下問(wèn)題,現(xiàn)在有 b b b 個(gè)糖果排成一排,在其中放 n ? 1 n - 1 n?1 個(gè)木板(可以有多個(gè)木板在同一個(gè)格子里),這樣就能把這些糖果分成 n n n 部分,求方木板的方案數(shù)。

? 這樣就很顯然了嘛,答案就是總共有 n + b ? 1 n + b - 1 n+b?1 個(gè)格子可選,在其中選出 n ? 1 n - 1 n?1 個(gè)格子的方案數(shù),也就是 C n + b ? 1 n ? 1 C_{n + b - 1}^{n - 1} Cn+b?1n?1?

Lv1

? 還有這樣一個(gè)問(wèn)題,求 ∑ i = 1 n x i = b \sum\limits_{i = 1}^nx_i = b i=1n?xi?=b x i ≥ l i x_i \geq l_i xi?li? 的非負(fù)整數(shù)解數(shù)。顯然我們非常不希望出現(xiàn)后面的約束條件,于是我們考慮這樣:

∑ i = 1 n x i = b ? ∑ i = 1 n l i \sum_{i = 1}^nx_i = b - \sum_{i = 1}^nl_i i=1n?xi?=b?i=1n?li?

? 這樣一來(lái)我們就把問(wèn)題轉(zhuǎn)化成了第一個(gè)問(wèn)題一樣的形式了(就相當(dāng)于我們減掉了 x i < l i x_i < l_i xi?<li? 的貢獻(xiàn)),答案就是:

a n s = ( n + b ? ∑ i = 1 n l i ? 1 n ? 1 ) ans = \begin{pmatrix} n + b - \sum\limits_{i = 1}^n l_i - 1 \\ n - 1 \end{pmatrix} ans=? ??n+b?i=1n?li??1n?1?? ??

Lv2

? 最后一個(gè)問(wèn)題,求 ∑ i = 1 n x i = b \sum\limits_{i = 1}^nx_i = b i=1n?xi?=b x i ≤ r i x_i \leq r_i xi?ri? 的非負(fù)整數(shù)解的個(gè)數(shù)。這個(gè)問(wèn)題就不像上一個(gè)那么好轉(zhuǎn)換了。所以我么考慮容斥掉 x i ≥ r i + 1 x_i \geq r_i + 1 xi?ri?+1 的貢獻(xiàn)。

? 我們令集合 S S S 表示 ∑ i = 1 n ( x i ≥ r i + 1 ) \sum\limits_{i = 1}^n(x_i \geq r_i + 1) i=1n?(xi?ri?+1) 的二進(jìn)制集合。這樣就相當(dāng)于求 S = { 0 , 0 , ? ? , 0 } S = \{ 0, 0, \cdots, 0 \} S={0,0,?,0} 的時(shí)候的答案。我們令 f ( S ) f(S) f(S) 表示該二進(jìn)制集合為 S S S 時(shí)的答案。則有:

f ( S = { 0 , 0 , ? ? , 0 } ) = t o t ? ∑ S ? U ( ? 1 ) ∣ S ∣ + 1 f ( S ) f(S = \{0, 0, \cdots, 0\}) = tot - \sum_{S \subset U}(-1)^{|S| + 1}f(S) f(S={0,0,?,0})=tot?S?U?(?1)S+1f(S)

? 其中 t o t tot tot 表示總數(shù),也就是第一個(gè)問(wèn)題的答案。 U = { 0 , 0 , ? ? , 0 } U = \{ 0, 0, \cdots, 0 \} U={0,0,?,0} n n n 個(gè) 0 0 0)。上面這個(gè)式子就是容斥原理嘛。

? 然后其中(等價(jià)于第二個(gè)問(wèn)題):

f ( S ) = ( n + b ? 1 ? ∑ i ∈ S ( r i + 1 ) n ? 1 ) f(S) = \begin{pmatrix} n + b - 1 - \sum\limits_{i \in S} (r_i + 1) \\ n - 1 \end{pmatrix} f(S)=(n+b?1?iS?(ri?+1)n?1?)

? 于是:

a n s = ( n + b ? 1 n ? 1 ) ? ∑ S ? U ( ? 1 ) ∣ S ∣ + 1 f ( S ) = ( n + b ? 1 n ? 1 ) + ∑ S ? U ( ? 1 ) ∣ S ∣ ( n + b ? 1 ? ∑ i ∈ S ( r i + 1 ) n ? 1 ) = ∑ S ? U ( ? 1 ) ∣ S ∣ f ( S ) \begin{aligned} ans & = \begin{pmatrix} n + b - 1 \\ n - 1 \end{pmatrix} - \sum_{S \subset U}(-1)^{|S| + 1} f(S) \\ & = \begin{pmatrix} n + b - 1 \\ n - 1 \end{pmatrix} + \sum_{S \subset U} (-1)^{|S|} \begin{pmatrix} n + b - 1 - \sum\limits_{i \in S}(r_i + 1) \\ n - 1 \end{pmatrix} \\ & = \sum_{S \subseteq U} (-1)^{|S|}f(S) \end{aligned} ans?=(n+b?1n?1?)?S?U?(?1)S+1f(S)=(n+b?1n?1?)+S?U?(?1)S(n+b?1?iS?(ri?+1)n?1?)=S?U?(?1)Sf(S)?

原文鏈接:https://blog.csdn.net/ID246783/article/details/125918474

欄目分類(lèi)
最近更新