原创 【字符串】 manacher算法

Algorithm Task 給定一個字符串,求其最長迴文子串 Limitations 要求時空複雜度均爲線性且與字符集大小無關。 Solution 考慮枚舉迴文串的對稱軸,將其對應的最長迴文子串長度 \(len\) 求出來,取最大值即爲答

原创 【border樹】【P2375】動物園

Description 給定一個字符串 \(S\),對每個前綴求長度不超過該前綴一半的公共前後綴個數。 共有 \(T\) 組數據,每組數據的輸出是 \(O(1)\) 的。 Limitations \(1 \leq |S| \leq 10^6

原创 【border相關】【P3426】 [POI2005]SZA-Template

【border相關】【P3426】 [POI2005]SZA-Template Description 給定一個字符串 \(S\),要求一個最短的字符串 \(T\),使得 \(S\) 可以由 \(T\) 不斷在後面接上自身得到。在拼接的時候

原创 【字符串】 Z-algorithm

Z-algorithm Algorithm Task 給定一個文本串 \(S\) 和一個模式串 \(T\),求 \(T\) 對於 \(S\) 的每個後綴子串的公共前綴子串。 Limitations 要求時空複雜度均爲線性 Solution

原创 【字符串】KMP

Algorithm Task 給定一個文本串 \(S\) 和一個模式串 \(T\),求 \(T\) 在 \(S\) 中出現的所有位置。 Limitations 要求時空複雜度均爲線性。 Solution 回頭重新學一遍看毛片 KMP 算法。

原创 【貪心】【P5521】[yLOI2019] 梅深不見冬

B [yLOI2019] 梅深不見冬 Background 風,吹起梅嶺的深冬;霜,如驚濤一樣洶涌;雪,飄落後把所有燒成空, 像這場,捕捉不到的夢。 醒來時已是多年之久,宮門銅環才長了鐵鏽, 也開始生出離愁。 ——銀臨《梅深不見冬》 Des

原创 【神奇性質】【P5523】D [yLOI2019] 珍珠

D [yLOI2019] 珍珠 Description 給定一個 deque,要求支持 push_back 和 push_front 操作,並且查詢前綴與非和以及後綴與非和。 deque中只會有 \(0\) 或 \(1\),一共有 \(n\

原创 【線段樹】【P5522】[yLOI2019] 棠梨煎雪

C [yLOI2019] 棠梨煎雪 Background 歲歲花藻檐下共將棠梨煎雪 自總角至你我某日輾轉天邊 天淡天青 宿雨沾襟 一年一會信箋卻只見寥寥數言 ——銀臨《棠梨煎雪》 Description 給定 \(m\) 個長度爲 \(n\

原创 【組合數學】【P5520】[yLOI2019] 青原櫻

A [yLOI2019] 青原櫻 Background 星川之下皆螢火塵埃 我獨行在人潮你天真而待 相遇若是借丹青着色 青原上 緋櫻如海 ——銀臨《青原櫻》(Cover 人衣大人) Description 給定 \(n\) 個位置,要求放下

原创 【數位DP】【P4317】花神的數論題

【數位DP】【P4317】花神的數論題 Description 給定 \(n\),求 \(n\) 以內所有正整數二進制下 \(1\) 的個數的乘積,答案對 \(10^7 + 7\) 取模 Limitations \(1 \leq n \le

原创 【數位DP】【P4127】[AHOI2009]同類分佈

Description 給出兩個數 \(a,~b\) 求出 \([a~,b]\) 中各位數字之和能整除原數的數的個數。 Limitations \(1 \leq a,~b \leq 10^{18}\) Solution 考慮數位DP。 設數

原创 【數位DP】【P2657】[SCOI2009]windy數

Description windy定義了一種windy數。不含前導零且相鄰兩個數字之差至少爲 \(2\) 的正整數被稱爲windy數。 windy想知道, 在 \(A\) 和 \(B\) 之間,包括 \(A\) 和 \(B\),總共有多少個

原创 【樹形DP】【P3177】[HAOI2015] 樹上染色

Description 給定一棵 \(n\) 個點的帶權樹,要求選 \(k\) 個點染成黑色,剩下染成白色,最大化兩兩同色點之間的距離和。 Limitations \(0 \leq k \leq n \leq 2000\) Solution

原创 【斜率優化】【P5468】 [NOI2019]回家路線

Description 給定 \(n\) 點,這 \(n\) 個點由 \(m\) 班列車穿插連結。對於第 \(i\) 班列車,會在 \(p_i\) 時刻從 \(x_i\) 站點出發開向 \(y_i\) 站點,到站時間爲 \(q_i\)。現在

原创 【基數排序】基數排序

Algorithm Task 給定 \(n\) 個整數,請排序後輸出 Limitations 要求時間複雜度 \(O((n + T)\log_TA)\),空間複雜度 \(O(T)\) ,其中 \(T = 32768\), \(A\) 是序列