BZOJ 2597 WC2007 剪刀石頭布:費用流最大化三元環
題目大意 給定一個競賽圖(部分邊方向未定),需為未定向邊指定方向,使得圖中三元環(3-環)數量最大。 核心轉化:補集法 三個點之間若不構成三元環,則必有一
LeetCode 69 大整數乘法:模擬手算與 FFT 優化思路
題目描述 給定兩個以字符串形式表示的非負整數,返回它們的乘積,結果也以字符串形式返回。數字長度任意,不能直接使用內置大整數類型。 解法一:模擬豎式乘法(基礎
HDOJ 排序題解:pow 函數類型陷阱與大整數分割排序
關鍵提示:pow 函數定義在 <math.h> 中,其參數與返回值均為浮點型(double 或 float)。調用時需注意類型轉換,避免精度丟失導致
C++ 實現 STL 風格鏈表迭代器:ListIterator 完整設計與代碼詳解
為了向 C++ 標準模板庫(STL)致敬,我們將模仿 std::list 的迭代器設計,為自定義的鏈表容器 MyList 實現一個功能完整的 ListItera
快速排序深度解析:為什麼快、Hoare 分區、三數取中、尾遞歸優化與插入排序混合
為什麼叫「快速」排序? 基於比較的排序下界為 Ω(n log n)。快速排序透過主元劃分,一次 O(n) 掃描就能確定 n/2 個元素「小於主元」、n/2 個「
LeetCode 88. Merge Sorted Array - 雙指針從後向前合併
題目 給兩個已排序整數陣列 nums1 (長度 m+n,前 m 格有效)、nums2 (長度 n)。將 nums2 合併進 nums1,使 nums1 保持非遞
數據結構基礎(九):鏈表串接、反轉與打印完整實現
鏈表串接 將第二條鏈表所有節點接到第一條鏈表末尾。關鍵點:必須 深拷貝 第二條鏈表的節點數據,不能直接鏈接原節點,否則析構時會雙重釋放同一記憶體。 next;
BZOJ 1930 [SHOI2003] Pacman 吃豆豆 - 費用流優化建圖
題目大意 平面上 n ≤ 2000 個點,兩個吃豆人從同一起點出發,只能往右上方移動 (即 x、y 皆不減)。每個點最多被吃一次。求兩人最多能吃到幾顆豆子。
資料結構基礎 (8) - 單向鏈表完整實作 (C++ Template)
為什麼需要鏈表? 操作陣列鏈表 尾端插入/刪除O(1)O(1) 中間插入/刪除O(N) 需搬移O(1) 僅改指標 隨機存取O(1)O(N) 需遍歷 結論
Java 基礎練習:遞歸階乘、九九乘法表、陣列排序與字串反轉
整理五個 Java 控制台小程式,適合初學者熟悉迴圈、遞歸、陣列操作與字串處理。所有功能整合在單一 Test 類中,透過 Scanner 互動輸入輸出。 功能
POJ 2264 Advanced Fruits - LCS 構造最短公共超序列
題目轉化 給兩字串 s1, s2 (|s| ≤ 100),求最短字串 s 使 s1、s2 均為其子序列。即最短公共超序列 (SCS)。 關鍵性質:|SCS| =
POJ 2524 Ubiquitous Religions - 並查集求宗教上界
題目大意 大學有 n (≤ 50,000) 位學生,已知 m 對「同教」關係。每生至多屬一教派。求「可能存在的不同教派數上界」。 輸入多組測資,以 0 0 結束
C++ 指標陣列、陣列指標與函數指標深度解析
指標是 C/C++ 的靈魂,也是許多開發者的痛點。本文從記憶體配置角度出發,系統梳理指標陣列、陣列指標、多重指標與函數指標的宣告、堆疊/堆上配置差異、釋放規則,
PHP 正則表達式提取 DIV 內 A 標籤的 HREF 與內容實戰
許多開發者在久違地重拾正則表達式時,都會有種「似曾相識」的熟悉感:明明是個小案例,卻總覺得得徹底搞懂不可,於是翻閱手冊、寫測試、終於豁然開朗,但下次遇到又得從頭
NYOJ 420 p次方求和:快速冪取模計算 Σ(i^p) mod 10003
問題描述 多測試用例,每個給 n, p (n≤1000, p≤1000)。求 S = Σ_{i=1}^{n} i^p mod 10003。 快速冪取模 計算
NYOJ 285 尋找克隆人:Map 計數 DNA 序列頻率
問題描述 給 n (≤20000) 個 DNA 序列(長度 ≤20),求每個序列在輸入中出現的次數,輸出「出現 i 次的序列有多少個」對應每行。即:統計頻率的頻
BZOJ 3611 HEOI 2014 大工程:虛樹 + 樹形 DP 求關鍵點兩兩距離和/最小/最大
問題描述 給一棵樹(n ≤ 10⁶),m 次查詢 (m ≤ 5×10⁴),每次給 k 個關鍵點 (Σk ≤ 2n)。求這 k 點之間: 1. 兩兩距離和。 2.