HDU 1711 Number Sequence:KMP 整數數組匹配
題目大意 給定兩個整數序列 a (長度 N ≤ 1,000,000) 和 b (長度 M ≤ 10,000)。找最小的 K 使得 a[K..K+M-1] = b
HDU 2203 親和串:KMP 判斷循環移位包含關係
題目大意 給定字符串 s1, s2 (長度 < 100,000)。若 s1 循環移位後包含 s2,則稱 s2 是 s1 的親和串。多組測試,輸出 yes/no。
HDU 3336 Count the String:KMP Next 數組性質應用
題目大意 給定長度 n (≤ 200,000) 的字符串 s,考慮所有非空前綴。每個前綴在 s 中出現的次數之和模 10007。 例如 s=abab,前綴:a(
POJ 2096 Collecting Bugs:概率 DP 求期望天數
題目大意 有 s 個子系統,n 種 bug 類別。每天隨機發現一個 bug,均勻分佈在 s×n 種 (子系統, 類別) 對中。求期望天數,直到每個子系統至少出現
POJ 2186 Popular Cows:強連通分量縮點找出度為零分量
題目大意 n 隻奶牛,m 對仰慕關係(有向邊)。若 A 仰慕 B,B 仰慕 C,則 A 間接仰慕 C(傳遞性)。求被所有奶牛仰慕的奶牛數量。 解題思路 強連
LeetCode Two Sum:哈希表優化 O(n) 解法詳解
題目大意 給定整數數組和目標值 target,找出兩數之和等於 target 的下標(1-based),假設唯一解存在。 解法演進 方法一:排序 + 雙指針
UVA 10641:雷鋒問題 - 燈塔照明最小代價
題目背景 給定一個凸多邊形(頂點按順序給出),有 m 個燈塔,每個燈塔有位置、照亮成本。燈塔只能照亮面向它的邊(向量叉積判斷)。目標是選擇燈塔照亮所有邊,最小化
Codeforces Round #274 (Div. 2) 題目原文與解法詳解
A 題:Expression 題目大意:給定三個正整數 a, b, c (1 ≤ a,b,c ≤ 10),在它們之間插入 +、* 和括號,使表達式值最大。不能交
Codeforces Round #274 (Div. 2) 解題報告:A-D 題完整分析
比賽概況 Codeforces Round #274 (Div. 2) 四道題目難度適中,本文提供完整解題思路與代碼實現。 A 題:Expression(表達
POJ 2375 Cow Ski Area:強連通分量縮點解題詳解
題目大意 給定一個 n×m 的滑雪場地圖,每個格子有高度 h[i][j]。滑雪者只能從高處向低處或平地滑行(四連通)。需要建設纜車使任意兩點互達,求最少纜車數量
POJ 1657 棋盤距離:國際象棋棋子移動步數計算
題目背景 給定國際象棋棋盤上的起點和終點坐標,計算王、后、車、象四種棋子的最小移動步數。棋盤為 8×8,坐標用字母+數字表示(如 a1, h8)。 核心分析
POJ 3253 Fence Repair:哈夫曼樹與優先隊列經典應用
題目大意 農夫約翰需要將一塊長木板鋸成 N 塊指定長度的木板。每次鋸切的花費等於當前木板的長度。目標是找到最小的總花費完成所有鋸切。這本質上是構建哈夫曼樹的過程
HDU 1896 Stones:優先隊列解題詳解
題目背景 HDU 1896 Stones 是一道經典的優先隊列應用題目。題目要求模擬一個拋石頭的過程:給定 n 顆石頭的初始位置和拋擲距離,每次從優先隊列中取出
HDU 5029 Relief Grain:樹鏈剖分 + 線段樹維護顏色權值
題目大意 樹上路徑添加顏色(權值),查詢每個節點最終權值最大的顏色。n,m ≤ 10⁵,顏色值 ≤ 10⁵。 解法框架 樹鏈剖分將樹分解為重鏈,映射到線段樹
POJ 3276 Face The Right Way:翻轉區間最小化操作數
問題大意 N 條牛排成一行,朝前(F)或朝後(B)。機器固定翻轉連續 K 條牛(1≤K≤N),每次操作反轉方向。求使所有牛朝前的最小 K 及對應最小操作數 M。
UVA 10047 The Monocycle:帶顏色與方向狀態的 BFS
題目大意 單輪車輪子分 5 色扇區,每前進一格輪子旋轉 72°(換一色)。可原地左/右轉 90°。起點 S 朝北、綠色觸地。終點 T 需綠色觸地,方向任意。求最
SDUTOJ 2475 Power Strings:KMP 求最小循環節
問題描述 給定字符串 s,求最小的 k 使得 s 由某長度為 k 的子串重複構成。即求最小循環節長度,輸出重複次數 n/k。 KMP next 數組應用 構建