简简单单组合数学
簡簡單單組合數學
P3158 [CQOI2011]放棋子
\(\uparrow\) 假組合數學,真 \(\text{DP}\) 。
\(f[i][j][k]\) : 用了 \(i\) 行 \(j\) 列,涂了前 \(k\) 種顏色的方案數。
\(g[i][j][k]\) : 用了 \(i\) 行 \(j\) 列,涂了第 \(k\) 種顏色的方案數(用來輔助 \(f\) 數組轉移)。
見代碼
n 個點的聯通圖數量
設 \(dp[i]\) 表示 \(i\) 個點的時候的答案。
我們假設已經計算好了 \([1,n-1]\) 的情況,現在要將第 \(n\) 號點加入。
“正難則反”,我們考慮 \(n\) 個點的非聯通圖的數量。
假定 \(n\) 號點與之前的 \(n-1\) 個點都不連通,那么顯然這是一個非聯通圖。
同時枚舉 \(1\le j\le n-1\) ,使 \(j-1\) 個節點連為 \(1\) 個大小為 \(j\) 的連通塊,選出的方案數為 \(\binom{n-1}{j-1}\) ,選出后的連通塊方案數有 \(dp[j]\) 種。
剩下的 \(n-j\) 個點隨便連邊,由 \(\binom{n-j}{2}\) 種情況,而且這些點與前面 \(j\) 個點沒有任何變相連,保證不連通。
于是遞推方程為:
\[dp[n]=\dbinom{n}{2}-\sum_{j=1}^{j<n}{dp[j]\times \dbinom{n-1}{j-1}\times \dbinom{n-j}{2}} \]總結
- 上一篇: 微型主机怎么选配件电脑主机配件怎么选
- 下一篇: 开机指南