【省選模擬】20/06/09

AA

  • 考慮求出循環節後就可以取模了
    直接 bsgsbsgs O(Tp)O(T\sqrt p) 可以得到 60pts60pts
    數列類似斐波那契,循環節可以直接求,證明
    複雜度 O(Tkp)O(Tk\sqrt p) 甚至可以 O(Tkp1/4)O(Tkp^{1/4})CodeCode

BB

  • 考慮一個組合意義,即確定排列和劃分過後,每一段選擇一對,若所有對都構成逆序對則產生 1 的貢獻,對每個都爲逆序對的概率進行計數,奇數位和奇數位的貢獻可以簡單計算,問題就是如何考慮偶數位和奇數位的貢獻
    按大小關係可以建邊,小的連向大的,那麼偶數位可以串成一條鏈
    奇數位的貢獻可以看成鏈上掛了若干個連入和連出的邊,連出的邊是沒法搞的,按照氪金手遊容斥
    考慮這顆內向樹它合法的概率,欽定根爲子樹最大值,我們要做的就是對所有內向樹合法的概率求和
    考慮這個概率是 1sizei\prod \frac{1}{size_i},而每次連出去一個奇數點相當將一個 1size\frac{1}{size} 改成 1,
    dpi,j,kdp_{i,j,k} 表示到 ii 分了 jj 段,子樹大小爲 kk 的概率之和(這對應着連出去的邊有 kk 條),這裏 1(k+i)!\frac{1}{(k+i)!} 的概率最後算上,那麼容易發現
    dpi,j,k=dpl,j1,k12(il2)+dpl,j1,k1(t=1il(k+i+t)(ti+l))+{dpl,j1,k(il+12)dpl,j1,k1(t=1il(k+i+t)t)}dp_{i,j,k}=\sum dp_{l,j-1,k}\frac{1}{2}\binom{i-l}{2}+\sum dp_{l,j-1,k-1}(\sum_{t=1}^{i-l}(k+i+t)(t-i+l))\\+\{\sum dp_{l,j-1,k}\binom{i-l+1}{2}-\sum dp_{l,j-1,k-1}(\sum_{t=1}^{i-l} (k+i+t)t)\}
    O(n4)O(n^4),注意這裏算的是所有排列中滿足內向樹合法的概率,而偶數位本身是排好序的,所以上述貢獻要乘上 n!n!CodeCode

CC

  • 迴文自動機統計每個串的最長迴文後綴的所有沒有出現過的前綴,出現過的前綴存在一個最大長度 lenlen,對應後綴數組上的一段區間,對這個長度二分即可,CodeCode
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章