原创 [HNOI2014]江南樂 博弈論

題面 題面 題解 首先我們知道一個關於除法的重要性質:對於一個固定的\(i\),表達式\(\frac{i}{m}\)的取值只有根號個。 因此我們考慮如何優化SG函數的求解。 觀察到在取值相同的同一段中,分完之後只會有m堆取值爲x 或者x +

原创 [HNOI2007]分裂遊戲 博弈論

題面 題面 題解 這題的思路比較特別,觀察到我們的每次操作實質上是對於一顆豆子的操作,而不是對一瓶豆子的操作,因此我們要把每顆豆子當做一個獨立的遊戲,而它所在的瓶子代表了它的SG值。 瓶子數量很少,因此我們只需要枚舉每個豆子的後繼狀態暴力轉

原创 中國剩餘定理

2道模板題: [TJOI2009]猜數字 // luogu-judger-enable-o2 #include<bits/stdc++.h> using namespace std; #define R register int

原创 線性基

線性基 定義 線性基 一個由若干數組成的集合\(S\),定義它的線性基爲最小的一個集合\(T\)使得\(S\)和\(T\)能夠異或出的值域(集合)相同 張成 一個集合\(S\),隨意取若干個數異或,能夠湊出的數的集合稱爲集合\(S\)的張成

原创 [SDOI2011]黑白棋 kth - nim遊戲

題面 題面 題解 觀察題目,我們可以發現,這個遊戲其實就是不斷再把對方擠到一邊去,也就是黑子不斷往左走,白子不斷往右走。 因此可以發現,如果將黑白子按順序兩兩配對,那麼它們中間的距離會不斷縮小,且每次操作只能改變k對黑白子中間的距離,並且每

原创 口胡:[HNOI2011]數學作業

題面 一開始看這題看了好久……覺得這題不可做。 結果是看錯題了,我居然看着一段長長的C開頭的單詞,然後就覺得這是卡特蘭數……不知道我在想些什麼…… 觀察到對於 i = 1~9 : f[i] = f[i - 1] * 10 + i; i =

原创 卷積 & 杜教篩

卷積 卷積定義:   如果有數論函數\(f, g\), 那麼它們卷積的第\(n\)項爲\((f * g) (n)\),設這個卷出來的新函數爲h,那麼有   \[h(n) = \sum_{k | n} f(k) g(n / k) = \sum

原创 行列式(二):餘子式&代數餘子式

按行列展開 一般來說,低階行列式的計算比高階行列式的計算要簡單得多,因此考慮用低階行列式來表示高階行列式。爲此,我們引入餘子式和代數餘子式的概念。 定義 餘子式: 在\(n\)階行列式中,把\((i, j)\)元\(a_{ij}\)所在

原创 行列式 & 高斯消元求解行列式

行列式 \[D = \left| \begin{array}{c} a_{11} & a_{12} & a_{13} \\ a_{21} & a_{22} & a_{23} \\ a_{31} & a_{32} & a_{33} \\ \

原创 CF528D Fuzzy Search FFT

中文題面 題目中有個k的限制比較麻煩,我們稍微轉換一下,令\(g[i][j]\)表示第\(i\)位,第\(j\)個字母,能否在k的範圍內匹配上。 那麼這個數組可以由類似滑動窗口的方式來解決: 新定義一個數組\(T[i][j]\)表示S串中第

原创 [HNOI/AHOI2018]排列 貪心

題面 題解: 把題面的限制換成中文: 如果排在第k位的下標 = 排在第j位的值 ,那麼k < j 換一個描述方式: 一個值爲x的數要排在第x個數後面。 再換一個描述方式: \(fa[i] = a_i\) 彷彿有什麼不對勁? 嗯這其實就是一棵

原创 博弈論 (學習中……持續更新)

博弈論 以下主要內容來自於對集訓隊論文《組合遊戲略述——淺談SG遊戲的若干拓展及變形》的整理與從其他地方收集補充的一些經典模型 博弈論還在學習過程中,可能還會補充一些東西 組合遊戲基礎定義 遊戲的定義: 遊戲有2名參與者,兩人輪流操

原创 CF521D Shop 貪心

題意: \(n\)個數,有\(m\)個操作,形如: 1,將\(x_i\)​改成\(val_i\)​ 2,將\(x_i\)加上\(val_i\)​ 3,將\(x_i\)​乘上\(val_i\) 其中第\(i\)個操作的編號爲\(i\). 現在

原创 CF335F Buy One, Get One Free 貪心

題意: \(n\)個物品,每個物品有一個價格,買一個高價格的物品,可以選擇免費得到一個價格嚴格低於這個物品的物品。求得到\(n\)個物品的最小代價。 題解: 神仙貪心…… 題目要求求出最小代價,相當於求最多能免費拿的價格。 先考慮一個\(n

原创 [ZJOI2014]力 FFT

題面 題解: \[F_j = \sum_{i < j}\frac{q_iq_j}{(i - j)^2} - \sum_{i > j}{\frac{q_iq_j}{(i - j)^2}}\] \[E_j = \sum_{i < j}\frac