PKUWC2019爆0記
訪問量該騙的還是要騙。
1.20
坐了一天的高鐵到jz了,熱的一批
1.21
上午開營儀式
下午day1
打開發現有個地主斗
然后開T1
出題人你™搞笑吧放一道sb都能切的題
然后開T2
發現非常的可做就寫了(題解在后面)
然后寫了3h+的T3
成功爆0
sb出題人
告辭
1.22
上午考數學
然后炸了咕咕咕
下午day2
先看完題感覺全都不會qwq
然后把T1的48分大暴力寫了
又把T2的21分大暴力寫了
然后分析了一波T2發現可以寫67分
就rush了一波\(O(m^2)\)成功被卡常
69分GG
題目大意+題解:
d1t1
題意:
一個有向圖,每一條邊可能存在也可能不存在,求拓撲序列數量的期望乘\(2^m\)。
沒有重邊自環,\(n\leq 20\)
顯然狀壓dp
d1t2
題意:
定義虛樹\(T(S)\)表示一些點的集合,\(x\)存在於\(T(S)\)中當且僅當\(x\in S\)或者在樹上刪除\(x\)后\(S\)集合存在兩個點不連通
樹上每個點都有一個顏色\(a_i\),\(A_i\)是滿足\(a_x=i\)的\(x\)的集合,對每個\(k(k\in[1, m])\)求一個序列\(x_1,x_2,\cdots,x_k\)滿足\(x_1<\cdots<x_k\)而且存在一個\(y\)滿足對於所有的\(i\)都有\(y\in T(A_{x_i})\)
\(1\leq m\leq n\leq 10^5\)
顯然這個存在\(y\)的限制就是這些虛樹有交,題目定義的虛樹顯然也是聯通塊,所以交也是聯通塊,枚舉這個聯通塊最上面的點\(x\)
現在的限制是\(x\)是這個聯通塊最上面的點,先算出\(x\)是\(a\)個虛樹最上面的點,剩下的有\(b\)個虛樹經過\(x\)
那么顯然只要選到了一個\(a\)中的虛樹,就能滿足\(x\)是這個聯通塊最上面的點,否則不能滿足
所以計算答案,\(ans_i+=C_{a+b}^{i}-C_{b}^{i}\)
顯然就是所有方案數減掉重復的部分
把所有點的\(a\)和\(b\)都求出來,最后的答案就是
\(ans_i=\sum_{j=1}^nC_{a_j+b_j}^{i}-\sum_{j=1}^nC_{b_j}^{i}\)
\(ans_i\cdot i!=\sum_{j=1}^n\frac{(a_j+b_j)!}{(a_j+b_j-i)!}-\sum_{j=1}^n\frac{b_j!}{(b_j-i)!}\)
突然發現更博的時候誤刪了題解一小部分?
記錄每一個數的貢獻,每一個\(a_j+b_j\)的貢獻為1,\(b_j\)的貢獻為-1,數\(i\)的貢獻記為\(c_i\)
最后結果是
\(ans_i\cdot i!=\sum_{j=1}^n\frac{c_j\cdot j}{(j-i)!}\)
記\(A(i)=c_i\cdot i,B(i)=\frac{1}{i!}\)
\(ans_i\cdot i!=\sum_{j=1}^nA(j)B(j-i)\)
顯然ntt一波即可
d1t3
題意:
兩個地主打牌,每個地主有20張牌
定義兩副牌不相等為,任意出一手牌,兩副牌有一副能接上,有一副不能接上。否則這兩副牌相等
規定兩個地主的牌必須包含一些牌,剩下的可以任意選(但是必須可以從一副撲克中選出),問方案數
題解:
你覺得我會?
d2t1
題意:
求滿足以下條件的序列\(x_1,x_2,\cdots,x_n\)數量:
- \(x_i\)是非負整數,而且\(x_i\ \mathbb{and}\ a_i=a_i\)
- \(x_i\in [l_i,r_i]\)
其中\(a,l,r\)是給定的。
\(n\leq 100,l_i,r_i,a_i< 2^{60}\)
題解:
屎貓用\(O(60\times n^4)\)過了此題(呲牙)然后屎貓口胡了一番
先離散化,然后設\(f[i][l][r]\)表示\([l,r]\)區間里從大到小選到第\(i\)位的方案數
枚舉中間點,因為要滿足遞增,所以中間點向左這一位都是0,向右這一位都是1
然后就分開了這兩個區間(這只是口胡)
d2t2
題意:
有一張有向圖,建一個新圖,對這個有向圖的每個環(環要滿足沒有重復的點)在新圖中建一個點,如果兩個環有公共邊就在新圖中給這兩個環對應的點連一條無向邊。問新圖的聯通塊數。
題解:
答案為所有SCC的基圖的點雙數量和。
證明?沒有
d2t3
題意:
有一堆點\(a_i\),每次選一個新點\(O\),對原來的每個點\(a_i\)做一個圓,半徑為\(a_i\)到\(O\)的距離
問最多可以刪掉多少個圓滿足刪圓后圓的面積並不變
題解:
不會