原创 [WC2018]州區劃分——FMT優化DP

題目大意: 這是鏈接 思路: 考慮動態規劃,設fSf_{S}fS​表示$S 集合中的點的劃分的滿意度之和,設集合中的點的劃分的滿意度之和,設集合中的點的劃分的滿意度之和,設t_{S}表示表示表示S集合中的點是否合法,集合中的點是否合法

原创 4566: [Haoi2016]找相同字符——後綴自動機

題目大意: 給定兩個串,求有多少種方式從兩個串中各提取出一個子串並且兩個子串相等。 思路: 涉及兩個串的子串問題考慮對第一個串建立SAM。 然後用第個二串在SAM上匹配,每到一個點,貢獻是(目前的長度-這個狀態的父親的長度)x這個狀態

原创 [bzoj3451]Tyvj1953 Normal——點分治+fft

題目大意: 求隨機點分治的期望複雜度,每次對一顆大小爲nnn的子樹需要O(n)O(n)O(n)的複雜度。 思路: 考慮計算每個點期望下被算的次數,根據期望的線性性,最後將每個點的答案加起來就可以了。 計算點u的計算次數可以考慮v對點u

原创 [uoj276][清華集訓2016]汽水——分數規劃+點分治

題目大意: 給定一顆帶邊權的樹,求一條路徑使得這條路徑上的邊權的平均值最接近一個給定的值。 思路: 既然是求平均值,那麼自然而然就想到了分數規劃了, 即最小化∣∑i=1lenwilen−k∣|\frac{\sum_{i=1}^{{le

原创 [bzoj3143][Hnoi2013]遊走——動態規劃+高斯消元

題目大意: 一個無向連通圖,頂點從1編號到N,邊從1編號到M。 小Z在該圖上進行隨機遊走,初始時小Z在1號頂點,每一步小Z以相等的概率隨機選 擇當前頂點的某條邊,沿着這條邊走到下一個頂點,獲得等於這條邊的編號的分數。當小Z 到達N號頂

原创 [loj2542]「PKUWC2018」隨機遊走——min-max容斥+樹上高消

題目大意: 給定一棵 n 個結點的樹,你從點 x 出發,每次等概率隨機選擇一條與所在點相鄰的邊走過去。 有 Q 次詢問,每次詢問給定一個集合 S,求如果從 x 出發一直隨機遊走,直到點集 S 中所有點都至少經過一次的話,期望遊走幾步。

原创 [hdu4035]Maze——樹上高消

題目大意: 給定一顆樹,從1號節點開始,在每個節點都有三種可能: 1.以kik_iki​的概率回到1號節點 2.以eie_iei​的概率走出迷宮 3.和該點相連的邊隨機走一條 求走出迷宮期望下走的步數。 思路: 首先設pi=1−k

原创 [bzoj4556][Tjoi2016&Heoi2016]字符串——後綴數組+主席數+二分答案

題目大意: 佳媛姐姐過生日的時候,她的小夥伴從某東上買了一個生日禮物。生日禮物放在一個神奇的箱子中。箱子外邊寫了一個長爲n的字符串s,和m個問題。佳媛姐姐必須正確回答這m個問題,才能打開箱子拿到禮物,升職加薪,出任CEO,嫁給高富帥,

原创 [hdu5909]Tree Cutting——動態規劃+FWT

題目大意: 給定一棵樹,求有多少個聯通塊滿足異或和=k,對於每一個k求答案。 思路: 設dpi,jdp_{i,j}dpi,j​表示聯通塊深度最小的點爲i時,異或和爲j時有多少個滿足條件。 從兒子轉移,FWT優化即可。 /*======

原创 [bzoj4589]Hard Nim——SG函數+FWT

題目大意: Claris和NanoApe在玩石子游戲,他們有n堆石子,規則如下: Claris和NanoApe兩個人輪流拿石子,Claris先拿。 每次只能從一堆中取若干個,可將一堆全取走,但不可不取,拿到最後1顆石子的人獲勝。 不

原创 [bzoj3998][TJOI2015]弦論——後綴自動機

題目大意: 給定一個字符串,求它的第k小子串。 思路: 後綴自動機的模板題。 考慮將後綴自動機建出來之後,求出每一個狀態在原串中出現了多少次,然後統計以每個節點往後拓展的字符串總共有多少種(按照拓撲序累加即可),最後直接在DAG上做類

原创 [bzoj4199][Noi2015]品酒大會——後綴數組

題目大意: 給定一個序列,定義兩個後綴是k相似的當且僅當這兩個後綴有長度爲k的公共前綴。 求對任意r∈[0,n−1]r\in [0,n-1]r∈[0,n−1],rrr相似的後綴的對數和兩個後綴乘積的最大值。 思路: 先考慮後綴數組是如

原创 [bzoj4650][Noi2016]優秀的拆分——後綴數組

題目大意: 定義一個字符串的拆分是優秀的當且僅當是AABBAABBAABB的形式,求給定字符串的所有子串的所有的拆分中有多少是優秀的。 思路: 95分太好拿了,這裏直接考慮正解該怎麼做。 不難發現我們只需要求出每個點開頭的AAAAAA

原创 [TJOI2017]DNA——後綴數組求LCP

題目大意: 給定一個文本串和一個模式串,求文本串中有多少個連續的子串和模式串相差不超過三個字符。 思路: 算是一道後綴數組的模板題。 直接做lcp,然後遇到匹配不上的就跳,跳的次數不能超過三次。 具體地,將兩個字符串連在一起,中間加一

原创 [bzoj3992][SDOI2015]序列統計——離散對數+NTT

題目大意: 給定一個數字不超過mmm的集合SSS,用SSS中的數生成一個長度爲nnn的序列,求所有序列中的元素乘積模mmm等於xxx的序列的個數。 思路: 考慮最樸素的DPDPDP,設fi,jf_{i,j}fi,j​爲選了iii個數,