12.3 模擬賽
過於神仙的比賽
T1 graph
題目大意:
一個無向圖 若其的一個子圖存在尤拉通路 則答案+=這個子圖邊數的平方
思路:
對於一個連通圖 發現一個奇妙的結論即這個聯通塊的答案=$2^{m-n+1}$(n為點數,m為邊數
然後對於多個聯通塊 答案為$2^{m-n+c}$,c為聯通塊數量
而答案可以轉化為$\sum_{x=1}^m \sum_{y=1}^m F(x,y)$其中$F(x,y)$表示強制選x和y這兩條邊的答案
所以現在考慮選了兩條邊後對答案的影響 若聯通塊數+1 則對答案的貢獻為$2^{m-n-1}$ 否則為$2^{m-n-2}$
則這道題變成了在無向圖上選兩條邊對聯通塊數量的影響 可以參考bzoj 3569
對每個非樹邊rand一個權值 一個樹邊的權值為覆蓋這條邊的所有權值異或和 若兩條邊異或和為1 則說明選這兩條邊會使聯通塊數量+1
最後統計一下答案
T2 math
題目大意:
思路:
首先可以構造一個狄利克雷卷積 $G=F*\mu$
當$d=1$的時候 $G(p)=0$ 發現$G(p^c)=F(p^c)-F(p^{c-1})$
由於$G(i)$為積性函式 所以$G(i)=G({p_1}^{c_1}) \times ··· G({p_k}^{c^k})$
則①$G(x)>0$的充要條件為x的每一個質因子的次數都$\geq 2$
這樣可以使有意義的$G$數量變少 又可以把$G$捲回去即$F=G*1$
則$F(i)=\sum_{d|n} G(d)$ 然後答案為$\sum_{i=1}^n G(i) \times \lfloor \frac{n}{i} \rfloor$
由①得對於所有對答案有貢獻的$G(i),i$都可以表示為$a^2 \times b^3$的形式,
而這種數的數量為$n^{\frac{1}{2}}$級別的 可以搜尋
T3 math
思路:
通過觀察可以發現$T(i,j)=C(i,j)*(i+1)$ 然後經過一些觀察發現 所求其實為$lcm(n-k+1,n-k+2··· n)$
可以構造一個數列$A_i[]$ 使得 $\prod_{i=1}^n A_r[j]=lcm(l,···,r)$
考慮已經構造好了$i-1$項 現在要加入第$i$這個數 則我們可以構造一個棧,分解$i$,在前面的數中將每個質數扔掉 eg:
* 6: 1 1 1 2 5 6
* 7: 1 1 1 2 5 6 7
* 8: 1 1 1 1 5 3 7 8
······
這樣的話是需要將這一段的點乘起來即可 由於強制線上 使用主席樹維護