原创 HDU 6625 three arrays 杭電多校第五場 B 良心題解

HDU 6625 three arrays 題意 給出a數組和b數組 c數組爲a[i]⊕b[i]a[i] \oplus b[i]a[i]⊕b[i] 重排列a,ba,ba,b數組使得得到的c數組字典序最小 思路 最小的爲a[i]與b

原创 莫隊學習筆記和題目集

莫隊 莫隊算法一般分爲兩類 莫隊維護區間答案 維護區間內的數據結構 樹上莫隊,帶修改莫隊、二維莫隊等等 普通莫隊 將詢問離線排序處理,使轉移的次數儘量少 基於分塊思想優化 若在其 l 在同塊,那麼將其 r 作爲排序關鍵字

原创 牛客網暑期ACM多校訓練營(第七場)H.Pair 數位DP

H.Pair 題意 給出三個數 A,B,CA,B, CA,B,C 求出 pair&lt;i,j&gt;pair&lt;i, j &gt;pair<i,j> 對數使得i∧j&gt;Ci\land j &gt; Ci∧j>C或者i⊕

原创 迴文自動機學習筆記

迴文自動機學習筆記 由兩棵子樹構成 一棵節點編號爲0,子樹是長度爲偶數的迴文串 一棵節點編號爲1,子樹是長度爲奇數的迴文串 迴文自動機 奇偶迴文串處理 len[0]=0,len[1]=−1len[0] = 0, len[1]

原创 D - Unique Path

D - Unique Path 題意 已知有一個圖有n個點m條邊 已知q條線索,以u,v,x的格式給出 若x==0x==0x==0,表示u,v之間僅存在一條路徑 否則,表示u,v之間存在多條路經 問,該圖是否存在 思路 考慮計算

原创 BZOJ1925: [Sdoi2010]地精部落 組合數+DP

BZOJ1925 [SDOI2010]地精部落 題意 給出nnn,求出nnn的全排列中,波動數列的個數(0&lt;n&lt;4201)(0&lt;n&lt;4201)(0<n<4201) 波動數列:每個點不是波峯((比相鄰的點

原创 CF1203F Complete the Projects 貪心+DP

CF1203F Complete the Projects 題意 發一波洛谷鏈接 [題解 CF1203F1 【Complete the Projects (easy version)】 https://www.luogu.org

原创 [USACO13OPEN]照片Photo 區間唯一存在

[USACO13OPEN]照片Photo 題意 給出n個奶牛和m個區間 m個區間包含所有的奶牛 每個區間有且只有一隻有斑點的奶牛 求最多有幾頭有斑點的奶牛 思路 區間有且只有一個 區間內至多存在一個 區間內至少存在一個

原创 HDU 6599 I Love Palindrome String(迴文自動機)

I Love Palindrome String 題意 給出字符串str 求出str中的子串數 且該子串爲迴文串並且該子串的前半串(包括中間字符)也爲迴文串 思路 首先可以輕鬆預處理出所有本質不同迴文串個數 即使用迴文自動

原创 帶修莫隊學習筆記+HDU6610

帶修莫隊 允許離線的帶區間修改的操作 -將修改操作編號,稱爲"時間戳" 普通莫隊是不能帶修改的,我們可以強行讓它可以修改 可以強行加上一維時間維, 表示這次操作的時間 [l−1,r,time][l−1, r, time][

原创 牛客網暑期ACM多校訓練營(第七場) F、Energy stones 區間修改+樹狀數組維護單點狀態

Energy stones 題意 每顆石頭初始能量是E[i]E[i]E[i], 每秒鐘增加L[i]L[i]L[i], 上限是C[i]C[i]C[i] 區間收割MMM次,求收割能量的總和 收割時候會把區間裏的能量都變爲

原创 初探字典樹、Trie樹 題目整理

字典樹 字典樹是一種處理前綴的數據結構 略懂數據結構的人,相信看完下面這張圖就差不多理解了 TrieTrieTrie的根節點是空的(相信沒有題目給的所有數據有公共前綴) 每個節點儲存一個單詞/字母 根節點到每個單詞節點的路徑上

原创 CF17E Palisection(迴文自動機+鏈式前向星優化空間)

CF17E Palisection 題意 給出字符串 求出字符串的子串中相交的對數 思路 問題轉化爲字符串總對數減去不相交的迴文串對數 總對數爲迴文串總數:n∗(n−1)/2n*(n-1)/2n∗(n−1)/2 不

原创 CF1204D Kirk and a Binary String

D. Kirk and a Binary String 題意 給出一個01串S,長度≤100000\leq 100000≤100000 請你構建一個01串P,長度與S相同 使得對於任意l,r,1≤l≤r≤S1\leq l \l

原创 拓展KMP學習筆記和題目集

拓展KMP 模板問題 給出兩個字符串匹配串 s , 模式串 p 請輸出 s 的每一個後綴與 p 的最長公共前綴 核心:由已知的匹配,求出當前已知的最長匹配位置 exkmp[]:表示模式串的每個後綴與模式串最長匹配長度 ex