2020 07 25 周作業簡要題解

2022-03-29 02:13:28 字數 2677 閱讀 7894

\[\huge\text

\]題意

\(n\) 根木棍,長度為 \(1,2,...,n\)。用其中三條邊構成乙個三角形,求方案數。

題解

容易觀察到答案的遞推公式:

\[\huge\text

\]題意

你有乙個 \(n \times m\) 的網格圖,現在你要將 \(k\) 個人放在網格中,滿足:

答案對 \(10^6+7\) 取模。

題解

簡單容斥。

定義 \(a,b,c,d\)為 第一行 / 最後一行 / 第一列 / 最後一列 沒有人的方案,則答案為(\(c_^\) - \(a \cap b \cap c \cap d\))。

\[\huge\text

\]題意

給定數列 \(a(|a|=n)\),依次計算相鄰兩數之和得到乙個新數列,重複操作,直到數列僅剩乙個數。

求這個數除以給定值 \(m\) 的餘數與哪些數無關。

題解

容易觀察到原數列中每個數被加的次數是楊輝三角的第 \(n\) 列。

將 \(m\) 分解質因數,依次維護 \(c_^\) 是否被 \(m\) 整除即可。可以使用公式:\(c_^=c_^ \times \dfrac\)。

\[\huge\text

\]題意

給你兩個 \(6\)行 \(5\) 列的矩陣,要求你從這之中找出密碼,找密碼的規則:密碼中左數第 \(i\) 個字母,必須在兩個矩陣左數第 \(i\) 列中均出現。密碼長度為 \(5\)。

題解

求出字典序最小的密碼,依次迭代即可。與組合數無關。

\[\huge\text

\]題意

求長為 \(n\) 的 \(01\) 序列中有多少個滿足:至少有 \(3\) 個連續的 \(1\)。

題解

設 \(f_i\) 表示長為 \(i\) 時的方案數,分類討論:

那麼,\(f_i = f_ \times 2 + 2^ - f_\)。邊界:\(f_3 = 1\)。

\[\huge\text

\]題意

有 \(n\) 根長度為 \(1\) 到 \(n\) 的棍子排列在一起,求從左邊看能看見 \(l\) 根,從右邊看能看見 \(r\) 根的方案數。

題解

考慮每次放入高度最小的桿子。

設 \(f_\),狀態意義如題意,則 \(f_\) 可以從以下幾種狀態轉移而來:

\[\huge\text

\]待補。

\[\huge\text

\]題意

求有 \(n\) 個節點且滿足深度相同的節點子樹大小相同的樹的數量。

題解

定義 \(f_i\),狀態意義如題意。

考慮新加入乙個根,剩下的 \(i-1\) 個節點由若干個相同形態的子樹構成,則有:

\[f_i = \sum \limits_ f_j

\]\[\huge\text

\]題意

求 \(n\) 個節點的環上沒有公共點的邊集個數。

題解

對於一條 \(n\) 個節點的鏈上的方案數 \(f_n\),考慮最後一條邊,如果選擇它,那麼這條邊的兩個頂點都不能選,有 \(f_\) 種方案;如果不選擇它,和 \(n-1\) 個節點時一樣,有 \(f_\) 種方案。

於是我們得到 \(f\) 的轉移方程:

\[f_ = f_ + f_

\]即 fibonacci 數列。

在計算答案時,使用相同的套路,分類討論是否選擇環上的一條邊 \(x\)。如果選擇了 \(x\),則有 \(f_\) 種方案。如果不選擇,那麼相當於組成了一條長度為 \(n\) 的鏈,方案為 \(f_\)。

\[ans = f_n + f_

\]當然,oeis 可以發現答案為 lucas 數列,但和題目無關,不再闡述。

\[\huge\text

\]題意

求所有的對 \((n,k)\),使得 \(c_^ = m\)。

題解

只考慮 \(n \geq 2 \times k\),因為 \(c_^ = c_^\),\(n < 2 \times k\) 的情況可以順便求出。

考慮列舉 \(k\),二分 \(n\)。\(c_^\) 增長速度極快,所以可以通過非常短的時間計算出答案。

\[\huge\text

\]題意

求滿足以下條件,長為 \(n\) 的 \(01\) 串的數量:

題解

數字 dp。

設 \(f_\) 表示有 \(i\) 個 \(0\)

\(j\) 個 \(1\) 目前 \(\mod k = mod\) 的方案數。

顯然每一步僅兩種決策,記憶化搜尋轉移即可。由於先列舉的是高位,所以設這一步選擇的是 \(x(x \in )\),那麼下一步到達的狀態應該是 \(f_\)。

題解 CF1485 簡要題解

奇怪的難度。當 b 2 的時候再操作,操作次數是一定的。因此 b 的變化量很小,暴力列舉。考慮哪個數不同,然後不同後可以選擇的區間是什麼。會發現中間夾著的區間選兩遍,旁邊的選一遍。做字首和好了。簡單轉化發現一定要滿足 a k b 1 k。列舉 b 貢獻式帶有乙個 min 找到其分割點,前一部分直接求...

走迷宮 簡要題解

走迷宮,帶起點終點 有傳送門,傳送門個數不超過 26 個 不會 我們可以考慮把每個點能到的點連邊 二維壓到一維,常見 trick 於是我們有乙個很顯然的想法 點到傳送門連 0 權值的邊 但是這樣是錯的,因為我們經過傳送門必須得進去 紅色是邊,藍色是最短路 於是如果乙個點能到傳送門,我們就直接把傳送門...

比賽題解 THUSC2021 簡要題解

給出乙個長度為 n 的序列 a 和乙個限制值 m 每一輪需要取走一些數 在滿足上述取數方案的情況下,一共會進行多少輪?資料範圍 1 leq n leq 5 times 10 4 1 leq m,a i leq 10 9 莽!模擬每一輪取數的過程。在前幾輪取數都沒有問題的時候,顯然貪心地在剩下的數中從...