Thrift 在 VC 中處理中文字符串亂碼的解決方案
問題根源 Thrift 為跨語言通訊統一使用 UTF-8 編碼傳輸字符串。Java/C# 原生支持 UTF-8,但 VC 項目常用 Multi-Byte (AN
C++ vector 元素刪除陷阱與正確姿勢
問題現象 遍歷 vector 並刪除特定值(如 1)時,直接 vals.erase(itr) 會導致迭代器失效,後續遍歷崩潰。 原因分析 erase() 會使
LeetCode Find Minimum in Rotated Sorted Array:二分查找模板詳解
問題描述 已知一個升序數組在未知 pivot 處旋轉(如 0 1 2 4 5 6 7 → 4 5 6 7 0 1 2),元素無重複,求最小值。要求 O(log
POJ 2823 Sliding Window:單調隊列求滑動窗口最大最小值
題目描述 給定長度為 n 的數組,窗口大小 k,輸出每個窗口的最小值與最大值。n ≤ 10⁶,需 O(n) 算法。 單調隊列原理 維護兩個雙端隊列:一個單調遞
HDU 4749 Parade Show:連續子序列模式匹配的貪心模擬
題目大意 有 n 名學生按編號 1..n 排成一排,身高分為 k 級(1≤k≤25)。給定最佳觀賞模組 a[1..m],需從隊列中選取若干個長度為 m 的連續子
HDU 5072 Coprime:數論與容斥原理計算三元組數量
問題描述 給定 N 個數,求有多少三元組 (a,b,c) 滿足:兩兩互質,或兩兩不互質。等價於求圖中三條邊顏色相同的三角形個數(互質為色 1,否則色 0)。
Codeforces 19D Points:樹狀數組與 Set 結合解決動態最近點查詢
題目大意 支援三種操作:添加點、刪除點、查詢給定 (x, y) 右上方最近的點。坐標範圍大,需離散化。 解法核心 將 y 座標離散化,建立樹狀數組(Fenwi
POJ 2184 Cow Exhibition:0-1 背包變形問題解析
問題背景 POJ 2184 Cow Exhibition 是一道經典的動態規劃題目,屬於 0-1 背包的變形。題目給定 N 隻牛(1 ≤ N ≤ 100),每隻
C++11 default 與 delete 關鍵字深度解析
C++11 新特性:default 與 delete 關鍵字 C++11 引入了許多新特性,其中 default 和 delete 兩個關鍵字雖然關注度較低(早
POJ 2406 Power Strings:KMP 算法求字串最大重複次數
POJ 2406 Power Strings 題目詳解 時間限制:3000MS 記憶體限制:65536K 提交總數:33205 通過
UVA 147 Dollars:硬幣找零完全背包計數
UVA 147 - 紐幣找零方案數:完全背包計數 DP 幣值:5,10,20,50,100,200,500,1000,2000,5000,10000(單位:分)
HDU Tick and Tick:三針相對運動週期分析
HDU Tick and Tick - 時鐘三針同時快樂的時間比例 三針(時、分、秒)每秒移動。若任意兩針夾角 ≥ D 度,則該針「快樂」。求一天(43200
HDU 5071 Chat 題解:Splay 模擬聊天窗口管理
題目大意 模擬聊天窗口管理器,支持 9 種操作: Add u:尾部新增優先級 u 的窗口(唯一) Close u:關閉優先級 u 窗口,輸出其聊天字數 Cha
Ural 1020 Rope 題解:幾何直觀 + 周長公式
題目大意 給定 N 個按順序排列的點,每個點為半徑 R 的圓。繩子環繞所有圓(外公切線),求繩子總長度。 幾何洞察 繩子由兩部分組成: 相鄰圓之間的外公切線