HDU Step 1.3.5 Fighting for HDU:排序模擬比賽得分
HDU Fighting for HDU 題解:排序後直接對比得分 中日擂台賽,雙方各 n 人 (n < 100),按能力值從弱到強出戰。贏得 2 分,平
HDU 4738 Caocao's Bridges:求最小割橋(橋的最小權值)
HDU 4738 Caocaos Bridges 題解:Tarjan 算法找橋 + 最小權值 給定無向圖(可能有重邊),尋找刪除後能使圖不連通的邊(即橋)中權值
UVA 11346 Probability:幾何概率與積分計算
UVA 11346 Probability 題解:矩形區域內面積概率 給定矩形區域 A = {(x,y) | x∈[-a,a], y∈[-b,b]},隨機取點
UVA 11695 Flight Planning:刪除一條邊並重連使樹直徑最小化
UVA 11695 Flight Planning 題解:樹重心與直徑優化 給定一棵 n 節點的樹 (n ≤ 2500),允許刪除一條邊並添加一條新邊,使得新樹
POJ 2752 Seek the Name, Seek the Fame:KMP Next 數組應用尋找前綴後綴
POJ 2752 題目分析與 KMP Next 數組應用 本題要求給定一個字符串 S,找出所有既是前綴又是後綴的子串長度,並按遞增順序輸出。這是 KMP 算法中
KMP 算法解析:數字序列匹配問題 (HDU Number Sequence)
KMP 算法在數字序列匹配中的應用 KMP (Knuth-Morris-Pratt) 算法是字符串匹配的經典算法,同樣適用於數字序列的匹配問題。本文以 HDU
無鎖消息隊列 RingQueue (六) - 休眠藝術續:調度策略深度分析
無鎖隊列 RingQueue 系列 (六) - 線程休眠與調度策略的深度探討 接前文,分析 Windows/Linux 線程休眠/調度原語的差異與缺陷,提出理想
LeetCode LRU Cache - 四種實現版本演進
LeetCode 146: LRU Cache - 從 STL 到手寫雙向鏈表與哈希表的四版優化 實現 LRU 緩存:get(key) 返回值並更新為最近使用;
LeetCode Compare Version Numbers - 版本號比較
LeetCode 165: Compare Version Numbers - 逐段比較版本號 比較兩個版本字符串(如 1.2.3),按 . 分割成整數段,從左
UVA 1595 Symmetry - 點集對稱軸判斷
UVA 1595 Symmetry - 判斷平面點集是否存在垂直對稱軸 給定 N (≤1000) 個點,問是否存在垂直線 x = c 使所有點關於此線對稱。若存
POJ 3177 Redundant Paths - 邊雙連通分量縮點求加邊數
POJ 3177 Redundant Paths - 邊雙連通分量 + 樹上葉子數 給定無向圖,求最少加幾條邊使任意兩點間至少有兩條不重邊的路徑(即圖變為邊雙連
Codeforces 508D Tanya and Password - 歐拉路徑矩陣實現
Codeforces 508D - Tanya and Password:鄰接矩陣存圖的歐拉路徑 同 205551,但用鄰接矩陣 Edge[u][v] 存儲邊數
BZOJ 2141 排隊 - 樹套樹 / 分塊維護逆序對
BZOJ 2141 排隊 - 動態逆序對:樹套樹 (線段樹套平衡樹) 給定一個排列,支持交換兩個位置的數字,每次交換後輸出當前逆序對總數。n, q ≤ 2000
SGU 275 To xor or not to xor - 高斯消元求最大異或和
SGU 275: To xor or not to xor - 線性基 / 高斯消元求最大子集異或和 給定 n 個數,選取子集使異或和最大。等價於求向量空間中的
CF 508C Anya and Ghosts - 貪心點蠟燭
Codeforces 508C: Anya and Ghosts - 貪心策略安排蠟燭 m 隻鬼魂在不同時刻來訪,每隻鬼魂需要至少 r 支蠟燭燃燒。每支蠟燭燃燒
LeetCode 14 Longest Common Prefix - 字符串數組最長公共前綴
LeetCode 14: Longest Common Prefix - 橫向掃描法 給定字符串數組,求最長公共前綴。若無公共前綴返回空串。 算法 以第一個字
NYIST 116 士兵殺敵 (二) - 區間和查詢與單點更新 (樹狀數組)
NYIST 116 士兵殺敵 (二) - 樹狀數組 (Fenwick Tree) 維護區間和 N 名士兵,初始殺敵數已知。M 次操作:Q x y 查詢區間 [x
LeetCode 15 3Sum - 三數之和為零去重
LeetCode 15: 3Sum - 排序 + 雙指針去重 給定整數數組,找出所有不重複的三元組 (a,b,c) 使 a+b+c=0,且 a≤b≤c。 算法