C++ STL 與數據結構學習指南:以 list 為例探討工具使用與原理掌握
STL 核心價值 STL(標準模板庫)提供工業級、高效、可復用的數據結構與算法框架。核心組件:容器、迭代器、算法、仿函數、配接器、空間配置器。 實戰體驗:st
HDU 5463 Clarke and Minecraft:背包容量與疊加上限的數學建模
題目大意 Clarke 需搬運材料。背包 36 格(4×9),每格最多疊加 64 個同類物品。給定 n 種物品及其數量,求最少搬運次數。多測試用例。 數學建模
HDU 5464 Clarke and problem:DP 計算子集和模 p 為 0 的方案數
題目大意 給定 n (≤ 1000) 個整數 a_i(絕對值 ≤ 1e9)和模數 p (≤ 1000)。從中任選若干個數(可選 0 個),求其和模 p 等於 0
HDU 5461 Largest Point:最大化 a*t_i² + b*t_j (i≠j)
題目大意 給定 n (≤ 5×10⁶) 個整數 t_i,及係數 a, b(絕對值 ≤ 10⁶)。從中選兩個不同下標 i, j,最大化 a*t_i² + b*t_
POJ 1061 青蛙的約會:擴展歐幾里得解同餘方程
題目大意 兩隻青蛙在長度為 L 的圓環上,初始位置 x, y,每次跳躍距離分別為 m, n(單位時間跳一次)。求最少跳躍次數使兩蛙相遇,即求最小非負整數 k 滿
HDU 1003 Max Sum:最大子段和與區間端點輸出
題目大意 給定長度 N (≤ 100,000) 的整數序列(元素值在 [-1000, 1000]),求最大子段和,並輸出該子段的起始和結束位置(1-based)
LeetCode 筆記:Integer to Roman 整數轉羅馬數字
題目描述 給定一個範圍在 1 到 3999 之間的整數,將其轉換為羅馬數字表示。羅馬數字規則: 基本符號:I=1, V=5, X=10, L=50, C=10
HDU 1573 X問題:擴展中國剩餘定理求解同餘方程組計數
題目大意 給定一組同餘方程:X mod a[i] = b[i](0 < a[i] ≤ 10),求在 [1, N] 範圍內滿足所有方程的正整數 X 的個數。
POJ 2407 / UVA 10299 Relatives:歐拉函數經典應用詳解
題目大意 給定一個正整數 n(n ≤ 1,000,000,000),求小於或等於 n 且與 n 互質的正整數個數。這正是著名的歐拉函數 φ(n)。特別注意:當
Effective C++ 條款 30:深度理解 inline 函數的利與弊
inline 本質:編譯器建議而非命令 inline 只是請求編譯器將函數體嵌入調用點。編譯器可拒絕(如函數過大、含循環/遞歸、虛函數)。隱式 inline:類
LeetCode 6. Z 字形變換:數學規律與多語言實現(C++/Java/C#)
題目理解 將字符串按 numRows 行 Z 字形排列,再按行讀取。例:PAYPALISHIRING, 3 → P A H N A P L S I
C++ TinyXML 解析庫完整指南:DOM 模型讀寫 XML 文件實戰
TinyXML 簡介 TinyXML 是輕量級開源 C++ XML 解析庫,支援 Windows/Linux,將 XML 文件解析為內存 DOM 樹,提供直觀
ZOJ 3609 Modular Inverse:擴展歐幾里得算法求模逆元
題目大意 給定 a, m (0 < a,m ≤ 1000),求最小正整數 x 滿足 a*x ≡ 1 (mod m)。若不存在輸出 Not Exist。多測試用例
HDU 4002 Find the Maximum:歐拉函數性質與貪心構造最大比值
題目大意 給定整數 n,求 x ∈ [1, n] 使 x / φ(x) 最大,其中 φ(x) 為歐拉函數(≤x 且與 x 互質的正整數個數)。 數學推導 歐拉
Valgrind Memcheck 實戰:C/C++ 內存洩漏檢測完全指南
Valgrind 簡介 Valgrind 是 Linux 下基於軟件模擬的調試分析工具套件。核心是模擬 CPU,工具掛載其上。Memcheck 是默認工具,專檢
Poco C++ 庫感性認識:跨平臺網絡應用開發利器
Poco 是什麼? Poco (Portable Components) 是開源 C++ 類庫集合,類似 Java 標準庫、.NET Framework、App