HDOJ 4454 Stealing a Cake - 計算幾何暴力枚舉切線點求最短路徑
HDOJ 4454 Stealing a Cake 題目:平面上有一圓形蛋糕(圓心 C、半徑 r)、一矩形家(對頂點 (x1,y1), (x2,y2))、螞蟻起
POJ 3185 The Water Bowls - 高斯消元法解模二線性方程組枚舉自由變元求最小操作數
POJ 3185 The Water Bowls 題目:20 個碗排成一行,狀態 0/1。操作:選一個碗翻轉,同時翻轉其左右鄰碗(邊界只翻兩個)。求全變為 0
URAL 2052 Physical Education - 數位 DP 遞歸區間縮減求固定點
URAL 2052 Physical Education 題目:自然數 1~n 按「數位和升序、數值升序」重新排序。求有多少數字的位置保持不變。n ≤ 109(
C++ 觀察者模式完整實現:報社訂閱者案例與鬆耦合設計
C++ 觀察者模式完整實現 模式定義:定義對象間一對多依賴,當一個對象(主題/Subject)狀態改變時,所有依賴它的對象(觀察者/Observer)自動收到通
位運算常用技巧大全(上):計數、判斷、交換、絕對值與平均值
位運算常用技巧大全(上) 位運算是底層優化、面試高頻考點,本文總結 11 類經典技巧,附 C++ 實現與原理註解。 1. 計算二進制中 1 的個數 方法一:逐
C++ 控制台貪吃蛇遊戲完整實現(雙緩衝繪製、等級系統、自適應速度)
C++ 控制台貪吃蛇遊戲改進版 基於 Windows Console API 實現的經典貪吃蛇,包含雙緩衝無閃爍繪製、動態等級/速度、暫停/結束邏輯,代碼結構清
C++ 函數模板入門:從宏定義到模板的泛型編程演進
C++ 函數模板入門 函數模板是 C++ 支持泛型編程的核心機制,允許編寫與類型無關的代碼,由編譯器根據實參類型實例化具體函數。 從宏到模板的對比 宏實現(不
為什麼要學習 C/C++?從底層控制到高薪就業的深度思考
為什麼要學習 C/C++? 作者:Vencily(高中學歷、體育特長生、自學程序員) 初衷:打破「有才能用,沒才幹瞎」的無力感 長期使用 C# 開發,雖然語法
C++ map 容器完全指南:基本操作、迭代器失效陷阱與刪除最佳實踐
C++ std::map 容器完全指南 std::map<Key, Value> 是基於紅黑樹實現的有序關聯容器,鍵值對按 Key 排序,鍵唯一。m
HDU 2846 Repository - 字典樹統計子串出現文檔數
HDU 2846 Repository 題目:P ≤ 10,000 個商品名(小寫字母,長 ≤ 20),Q ≤ 100,000 次查詢,每次給一個串 s,輸出有
HDU 5119 - 異或子集計數 DP(Meet-in-the-Middle 優化)
HDU 5119 - 異或子集計數 題目:給定 n ≤ 40 個整數 ai (≤ 220),求異或和 ≥ m 的子集數量。多測試用例。 Meet-in-the
HDU 3488 Tour - KM 算法求最小費用圈覆蓋
HDU 3488 Tour / HDU 1853 - 最小費用圈覆蓋 題目:有向圖 n 個節點,m 條邊,每條邊有權值。選若干條邊構成若干個不相交的有向環,覆蓋
HDOJ 4456 Crowd - 座標旋轉 45° + 二維樹狀數組離線離散化
HDOJ 4456 Crowd 題目:N×N 網格(N ≤ 10,000),支持兩種操作(M ≤ 80,000): 1) 1 x y z:點 (x,y) 密度增
POJ 3349 Snowflakes - 雜湊表+標準化判重
POJ 3349 Snowflakes 題目:給定 n (≤ 100,000) 個雪花,每個雪花有 6 個臂長(整數 < 107)。雪花可旋轉、翻轉,判斷
HDU 4925 Apple Tree - 棋盤染色與貪心策略
HDU 4925 Apple Tree 題目:n×m 果園格子,每格最多種一棵樹。種樹得 1 果實;給某格施肥,其上下左右相鄰的樹果實翻倍。求最大總收獲量。
HDU 1711 Number Sequence - KMP 算法在數組匹配中的應用
HDU 1711 Number Sequence 題目:給定長度 N (≤ 1e6) 的文本數組 a 和長度 M (≤ 1e4) 的模式數組 b,求 b 在 a
Codeforces 34C Page Numbers - 區間合併輸出格式化
Codeforces 34C Page Numbers 題目:輸入一串逗號分隔的頁碼(1~1000,最多 100 個),去重後升序排列,將連續區間合併為 l-r
HDOJ 1394 Minimum Inversion Number - 循環串最小逆序數(線段樹優化)
HDOJ 1394 Minimum Inversion Number 題目:給定 0~n-1 的一個排列(n ≤ 5000),將其視為循環串,可循環左移任意位置