HDU 1569 方格取數:最大權獨立集轉最小割的網絡流建模
問題轉化 n×m 棋盤,每格有權值,選取格子使任意兩格**不相鄰**(上下左右),最大化權值和。 經典技巧:**黑白染色(二分圖) + 最大權獨立集 = 總權值
C++ Primer 學習筆記:第一章——基礎 I/O 與控制結構
main 函數與返回值 簽名固定為 int main(),返回 int。 0 表示成功,非零表示錯誤碼(可被作業系統或腳本捕獲)。 標準 I/O 物件
POJ 1064 Cable Master:浮點數二分搜尋精度控制完全指南
問題重述 給定 n 條長度已知的纜繩,需剪成 k 段等長纜繩(長度可為小數),求最大可能長度,輸出保留小數點後兩位(直接捨去,非四捨五入)。 為何整數二分模板
C++ 視窗程式進階:以 GWL_USERDATA 取代訊息映射表實現成員函數回呼
痛點:傳統 MFC 映射表的效能與優雅度權衡 MFC 透過 CWnd::m_hWnd 與 this 指標的全域映射表(map<HWND, CWnd*>
POJ 1022:四維魔方包裝問題詳解與狀態壓縮解法
題目背景與核心概念 POJ 1022 Packing Unit 4D Cubes 是一道經典的幾何組合問題,乍看題意晦澀難懂,實則只需將三維空間的邏輯類比推廣至
HDU 4311:曼哈頓距離最優會合點——一維中位數與前綴和優化
問題描述 給定平面上 N 個點 (x_i, y_i)。選擇一個點作為會合點,使所有點到該點的曼哈頓距離之和 Σ (|x_i - X| + |y_i - Y|)
NYOJ 171 聰明的 KK:網格圖最大路徑和動態規劃入門
問題描述 在 N × M (≤ 20) 的矩形網格中,每個格子有非負權值(蟲子數)。KK 從左上角 (1,1) 出發,每步只能向右或向下移動,到達右下角 (N,
Blueprint CSS 框架深度解析:從 Reset 到 Grid 系統的完整架構
簡介 Blueprint 是早期極具影響力的 CSS 框架,其核心思想是「合併多個 CSS 檔案為單一檔案,減少 HTTP 並發連接」,並提供 Reset、Ty
SPOJ HACKING:滾動哈希枚舉尋找缺失子串
問題描述 給定長度為 n 的字符串 S,字符集為前 k 個小寫字母。求一個長度為 m 的字符串 T,使其不是 S 的子串。保證解存在。 核心觀察:鴿巢原理與長
C++ static 關鍵字全方位解析:五大用法與內存模型
前言 static 是 C/C++ 中最令人困惑的關鍵字之一,因其在不同作用域下語義截然不同。本質上,static 決定了變量/函數的「存儲期限」為靜態存儲期(
POJ 3415 Common Substrings:後綴數組 + Height 數組 + 單調棧 計算公共子串數量
問題描述 給定兩個字符串 A、B 及整數 k。求長度 ≥ k 的、同時出現在 A 和 B 中的不同子串對數量(即 A 的一個後綴與 B 的一個後綴的最長公共前綴
HDU 1874 繼續暢通工程:最短路經典問題的 Dijkstra 與 Floyd 實現對比
問題描述 給定 N 個節點 (N ≤ 200)、M 條無向邊,每條邊有長度。查詢從節點 S 到 T 的最短路徑長度。若不可達輸出 -1。多測試用例直到 EOF。
HDU 3973 ACs String:字符串哈希與線段樹動態維護子串查詢
問題描述 給定一個長度 N 的初始字符串,支援兩種操作: 修改:C pos ch,將位置 pos 的字符改為 ch。 查詢:Q l r,詢問子串 S[l..r
C++ 指針與引用深度解析:核心差異、陷阱與最佳實踐
前言 指針與引用是 C++ 中間接訪問對象的兩大機制。雖然引用常被視為「語法糖」,但兩者在語義、靈活性及底層行為上存在本質區別。掌握這些差異,對編寫健壯、高效的
Codeforces Beta Round #7 D - Palindrome Degree:Manacher 算法與回文度 DP
問題描述 給定字符串 s (長度 ≤ 5×10^6)。定義字符串的「回文度」: 空串或長度 1 串:度為 1? 若字符串是回文,則其度 = 1 + 前半部分的
計算幾何專題:最大空三角形問題 - 暴力枚舉與叉積判斷
問題描述 給定平面上 N (N ≤ 15) 個點,每個點帶一個標識字符。找出由這些點組成的、內部不包含任何其他給定點的三角形中,面積最大者,輸出其三個頂點的標識