關於spring cloud gateway配置檔案的總結
Problems
1. [FZOJ5022]慶典
將 \(n\) 個人分為 \(m\) 組,使得每一組的人數都不一樣,求方案數。
\(n,m\le 10^5\)。
2. [SDOI2016]排列計數
求有多少種 \(1\) 到 \(n\) 的排列 \(a\),滿足序列恰好有 \(m\) 個位置 \(i\),使得 \(a_i = i\)。
對於 \(60\%\) 的資料,\(n,m,T\le 1000\)。
對於 \(100\%\) 的資料,\(n,m\le 5\times 10^5,T\le 10^6\)。
3. [POJ1737]Connected Graph
給定 \(n\)。求 \(n\) 個有編號的點可以組成多少個不同的聯通圖。
\(n\le 50\)。
4. [CF855C]Helga Hufflepuff's Cup
給你一棵 \(n\) 個點的樹,可以染 \(m\) 種顏色,現在定義一種最高值 \(k\),一棵樹上最多能有 \(x\) 個最高值,如果一個節點為最高值 \(k\),那麼他相鄰的節點的值只能選比他小的。求染色方案數。
\(n\le 10^5,k\le m\le 10^9,1\le x\le 10\)。
5. [HNOI2012]排隊
某中學有 \(n\) 名男同學,\(m\) 名女同學和 \(2\) 名老師要排隊參加體檢。他們排成一條直線,並且任意兩名女同學不能相鄰,兩名老師也不能相鄰,那麼一共有多少種排法呢?(注意:任意兩個人都是不同的)
\(n,m\le 2000\)。
Solutions
1. [FZOJ5022]慶典—Solution
鴿。。。
要不先看看 部落格$ QwQ$
2.[SDOI2016]排列計數—Solution
演算法 1
題目:“恰好 \(m\) 個位置” 快試試二項式反演!
至少 \(i\) 個位置相同很好算,直接欽定就可以了。
時間複雜度 \(O(Tn)\),期望得分 \(60\)。
演算法 2
\(T\le 10^6\),我們需要預處理。
首先我們可以要欽定 \(m\) 個位置相等,然後剩下 \(n-m\) 個位置不等。
那麼剩下 \(n-m\) 個位置就是一個錯排問題。
預處理 \(D_i\) 表示 \(i\)
時間複雜度 \(O(100)\),期望得分\(n+T\)。
3.[POJ1737]Connected Graph—Solution
考慮 \(dp\),但是我們發現並不能很好地表示一種狀態。
但是我們可以容斥:計算總方案數 \(-\) 不連通方案數。不妨設 \(f_i\) 表示 \(i\) 個點能組成不連通圖的個數。
考慮計算 \(f_i\),有一個很妙的技巧:列舉 \(1\) 號點所在連通塊大小,計為 \(s\)。於是剩下 \(n-s\) 個點不連通,可以隨便連邊,這一部分的方案數為 \(2^{\frac{(n-s)(n-s-1)}{2}}\)。
所以 \(f_i=\sum\limits_{s=1}^{i-1}g_s\cdot\binom{i-1}{s-1}\cdot2^{\frac{(n-s)(n-s-1)}{2}}\) ,其中 \(g_i\) 表示 \(i\) 個點能組成的聯通圖的個數。
啥,你說不會算 \(g\)?
根據我們上面說的容斥思路,顯然有 \(g_i=2^{\frac{i(i-1)}{2}}-f_i\)。
所以聯立一下,得到
\[g_i=2^{\frac{i(i-1)}{2}}-\sum\limits_{s=1}^{i-1}g_s\cdot\binom{i-1}{s-1}\cdot2^{\frac{(n-s)(n-s-1)}{2}} \]然後 \(O(n^2)\) 遞推就行了。