C++ 面向對象實戰:點類 設計與實現 (距離、對稱、輸入輸出)
需求分析 設計一個平面點類 `CPoint`,封裝橫縱坐標,提供以下功能: 構造函數 (支持默認參數) 計算兩點間距離 計算到原點距離
HDU 1556 Color the Ball 解題報告:樹狀數組 (Fenwick Tree) 區間更新與單點查詢
題目大意 有 `n` 個球,初始顏色 0。`n` 次操作,每次將區間 `[a, b]` 內所有球染色(顏色計數 +1)。最後輸出每個球被染色的總次數。多組數據。
C++ const 成員函數深度解析:為什麼 const 對象只能調用 const 方法
現象觀察 對比兩段代碼,唯一差別在於 `getX()` 是否加 `const` 修飾: // 版本一:編譯通過 class C { int x; pu
HDU 2013 解題報告:猴子吃桃逆向遞推
題目大意 猴子第一天摘若干桃子,吃掉一半再多吃一個;之後每天同樣吃掉剩餘的一半再多一個。到第 `n` 天早上只剩 1 個。求第一天共摘多少個。多組數據(EOF)
HDU 2012 解題報告:歐拉多項式質數判定
題目大意 給定區間 `[x, y]` (x ≤ y ≤ 10000)。判斷對於區間內所有整數 `i`,`f(i) = i² + i + 41` 是否全為質數。若
HDU 2010 解題報告:水仙花數 (Narcissistic Number) 區間查找
題目大意 輸入區間 `[n, m]` (0 ≤ n ≤ m ≤ 1000)。輸出區間內所有三位數「水仙花數」(各位數字立方和等於數字本身,如 153 = 1³+
HDU 2009 解題報告:平方根序列求和
題目大意 給定初始值 `n` 和項數 `m`。序列定義:`a₁ = n`,`aₖ = √aₖ₋₁` (k≥2)。求前 `m` 項和 `S = Σ aᵢ`,保留兩
Codeforces Round #178 (Div. 2) 題解總覽:C/D/E 三題深度解析
比賽回顧 Codeforces Round #178 Div.2 經典題目集。本文詳細解析 C、D、E 三題核心思路與代碼實現。 Problem C:區間
Codeforces 178B - Shaass and Bookshelf:記憶化搜索解決書架最小厚度問題
題目大意 有 `n` (≤100) 本書,每本有厚度 `tᵢ` (1 或 2) 和寬度 `wᵢ`。需將書分為兩堆: 垂直堆: 疊在底部,總厚度為 `T
資料結構基石:單鏈表 (Linked List) C 語言完整實現指南
核心概念:鏈式儲存結構 與順序表(陣列)連續記憶體不同,鏈表由離散的節點組成。每個節點包含: 資料域:儲存元素值。 指標域:指向下一個節點的位
HDU 2018 母牛的故事:費波那契變體遞推關係與 DP 解法
題目背景 經典遞推問題:母牛每年生一頭小母牛,小母牛出生 3 年後開始生產。求第 N 年母牛總數。遞推公式: f(n) = f(n-1) + f(n-3) &
C++ 高精度運算實戰:基於運算符重載的 BigInt 大整數類實現詳解
前言:為什麼需要高精度運算? C/C++ 內建整數類型(`long long` 最大約 10¹⁸)無法滿足數百位數字的運算需求(如組合數學、密碼學、大數學競賽題
HDU 1160 FatMouse's Speed 解題報告:最長遞增子序列變體與路徑重構
題目大意 給定一群老鼠,每隻有體重 `w` 和速度 `s`。要求找出一個最長的序列,使得序列中體重嚴格遞增、速度嚴格遞減。並輸出序列長度與原始編號(需+1)。
解決 C++ 靜態成員「unresolved external symbol」連結錯誤:原因與修正指南
錯誤現場:靜態成員變數的連結失敗 許多 C++ 開發者在類別中宣告 `static` 成員變數時,編譯通過卻在連結階段報錯: error LNK2001: u
C++ 讀寫 INI 設定檔完整教學:GetPrivateProfileString 與 WritePrivateProfileString 實戰
前言 在 Windows 開發中,INI 格式的設定檔因結構簡單、易讀取,常被用於儲存應用程式的初始化參數。Windows API 提供了 GetPrivate
POJ 1270 / UVA 124 Following Orders:拓撲排序輸出所有合法序列
問題描述 第一行:變數集合(小寫字母,含空格)。 第二行:約束關係 a1 b1 a2 b2 ... 表示 ai 必須在 bi 之前。 輸出:所有滿足約束的排列
HOJ 2555 三維最大子段和:前綴和 + 枚舉底面 + Kadane
問題描述 給定 h × n × m 三維陣列,求連續子立方體的最大元素和。h ≤ 32, n,m ≤ 50。 解法架構 層二維前綴和:sum[z][i][j
動態規劃專題:最大子段和 (一維、二維、三維)
一維:最大子段和 狀態:dp[i] = 以第 i 元素結尾的最大子段和(非前 i 項最大)。 轉移: 0) dp[i+1] = dp[i] + a[i+1];