HDU 3565 Bi-peak Number:數位 DP 狀態機解決雙峰值數計數
問題描述 峰值數:位數 ≥ 3、首位非零、各位數字先嚴格遞增後嚴格遞減(只有一個峰值)。 Bi-peak 數:兩個峰值數首尾相接構成的數。 給定區間 [A, B
HDU 1535 / POJ 1511 Invitation Cards:SPFA 雙向最短路(反向建圖技巧)
問題描述 有向圖 P 個站點(1 為中心站 CCS),Q 條單向邊帶權重。每個志願者從 CCS 出發去唯一指定站點,晚間返回 CCS。求所有志願者往返總最小費用
POJ 1087 A Plug for UNIX:最大流(Dinic)解決插座轉換器匹配問題
問題建模 源點 S 連接每個插座類型,容量 1(每類插座 1 個)。 匯點 T 連接每個設備,容量 1(每設備需 1 插座)。 轉換器:從插座類型 A 到插頭
HDOJ 1240 Asteroids!:三維網格 BFS 最短路徑
問題描述 在 N×N×N 立方體網格(N ≤ 10)中,O 為空地,X 為小行星(障礙)。給定起點和終點坐標,求最少步數(六連通移動),不可達輸出 NO ROU
LeetCode 96 不同的二叉搜索樹:卡特蘭數動態規劃解法
問題描述 給定 n,求由 1..n 組成的、結構不同的二叉搜索樹(BST)數量。例如 n=3 有 5 棵。 動態規劃思路 以 i (1≤i≤n) 為根節點,左
C++11 核心特性深度解析:從委托構造到完美轉發
1. 委托構造函數 一個構造函數調用同類另一個構造函數完成通用初始化,避免重複代碼或私有 init() 函數。 class Person { public:
對象工廠模式深度解析:從簡單工廠到泛型註冊表實現
為什麼需要對象工廠? 直接 new ConcreteClass 將類型硬編碼在業務邏輯中,違反開閉原則。工廠模式核心思想:根據標識符(字符串、枚舉、配置)動態查
C++ 類 全面總結:定義、構造、復制控制、靜態成員、友元與作用域
一、類定義基礎 基本語法 class ClassName { public: // 公有接口 protected: // 繼承可見 private:
C++ 基礎:派生類指針與基類指針相互轉換(Upcasting & Downcasting)
代碼示例 #include <iostream> using namespace std; class CParent { public:
C++ Primer 學習筆記 Chapter 1:環境搭建、IO 庫、命名空間與類初探
第一章:快速入門 第一章標題「Getting Started」看似基礎,實則包含構建開發環境、理解編譯流程、掌握標準 IO、命名空間、類基礎等核心概念。複習時發
HDU 1072 Nightmare:帶炸彈倒計時的迷宮 BFS 狀態擴展
問題描述 在 N×M 迷宮(N,M ≤ 8)中,從起點 (2) 走到終點 (3)。每步 1 分鐘,初始炸彈倒計時 6 分鐘。格子類型:0 牆、1 空地、4 重置
C++、Java、JavaScript 日誌記錄全面指南:從原理到實戰
什麼是日誌? 日誌是程序運行過程中事件的時間序列記錄。正如人類寫日記記錄生活,程序通過日誌記錄關鍵狀態、錯誤、性能指標等,用於調試、審計、監控和問題追溯。好的日
LeetCode 1 兩數之和:排序雙指針與哈希表兩種經典解法
問題描述 給定整數數組 nums 和目標值 target,找出兩數之和等於 target 的下標(1-based),保證唯一解。要求 index1 < inde
UVA 10129 Play on Words:歐拉路徑判定與並查集連通性檢查
問題描述 給定一組單詞,每個單詞視為一條有向邊:從首字母指向尾字母。判斷能否將所有單詞排成一列,使相鄰單詞首尾字母銜接(即構成歐拉路徑)。輸出 Ordering
LeetCode 27 移除元素:雙指針原地刪除 O(n) 解法
問題描述 給定數組 nums 和值 val,原地移除所有等於 val 的元素,返回新長度。元素順序可改變,超出新長度部分無需維護。要求 O(1) 額外空間。
LeetCode 58 最後一個單詞的長度:字符串尾部遍歷技巧
問題描述 給定一個由大小寫字母和空格組成的字符串 s,返回最後一個單詞的長度。單詞定義為連續的非空格字符序列。若不存在單詞返回 0。例如 Hello World
LeetCode 162 尋找峰值元素:二分查找 O(log n) 解法
問題描述 給定一個整數數組 nums,找到峰值元素並返回其索引。峰值元素是指其值嚴格大於左右鄰居的元素。對於數組邊界元素,只需考慮一側鄰居。假設 nums[-1
HDU 1253 勝利大逃亡:三維迷宮 BFS 最短路徑
問題背景 Ignatius 被關在 A×B×C 的立方體城堡中,起點 (0,0,0),終點 (A-1,B-1,C-1)。城堡由 0(通路)和 1(牆壁)組成。每