ZZULI OJ 1726 迷宮 解題報告:多關卡 BFS + 8 方向移動 + 夾角阻擋判斷
題目大意 N×M 迷宮 (N,M ≤ 100),# 障礙,. 空地。K (≤10) 個機關,需按順序觸發。起始位置給定。移動規則:可移動到 8 鄰域空地,但不能
LeetCode Search a 2D Matrix 解題詳解:楊氏矩陣查找 O(M+N)
題目重述 給定 M×N 上一行尾元素(即整體嚴格遞增)。查找目標值是否存在。 等價於:矩陣若展平為一維陣列則有序。但利用二維特性可做 O(M+N) 查找(不需二
NY OJ 587 Blockhouses 解題報告:4×4 棋盤 DFS 全搜尋放置哨塔
題目大意 N×N 棋盤 (N ≤ 4),. 為空地,X 為牆。哨塔可放在空地,其子彈沿四方向直線飛行直到牆或邊界。哨塔間不能互相攻擊(即同行/同列無牆阻隔時不能
HDU 3572 Task Schedule 解題報告:最大流 Dinic 算法與精妙建圖
題目大意 N (≤500) 個任務,M (≤200) 台機器。任務 i 需在 [Sᵢ, Eᵢ] 區間內處理 Pᵢ 天(可中斷、可換機器)。每台機器每天只能處理一
POJ 1050 解題報告:二維最大子矩陣和優化為枚舉行 + 一維最大子段和
題目大意 給定 N×N 矩陣(N ≤ 100),求任意子矩陣的最大元素和。元素可為負。 優化思路:降維打擊 枚舉上邊界 top (1..N) 和下邊界 bo
PKU 3090 Visible Lattice Points:歐拉 totient 函數與篩法完美應用
PKU 3090 Visible Lattice Points:歐拉 Totient 函數與篩法完美應用 題目重述 第一象限(含軸)內整數格點 (x,y),0
URAL 1792 Hamming Code 解題報告:暴力枚舉糾錯
題目大意 4 個磁碟(D1~D4),3 個花瓣(P1~P3)。每個磁碟寫 0/1。花瓣值 = 所屬磁碟值之和模 2。對應關係: P1 由 D2, D3, D4
LeetCode Binary Tree Right Side View 解題詳解:BFS 層序遍歷取最右節點
題目重述 給定二叉樹根節點,站在樹的右側看,返回每一層最右邊可見的節點值列表(自上而下)。 例: 1 / \ 2 3 \ \
URAL 1793 Tray 2 解題報告:三維截錐體在矩形托盤擺放幾何判斷
題目大意 托盤底面 a×b,邊框高度 d。兩個截錐體盤子,高度均為 h,底面半徑 r₁,r₂,頂面半徑 R₁,R₂ (R > r)。盤子底面需完全貼合托盤
URAL 1828 Approximation by a Progression 解題報告:最小二乘法擬合等差數列
題目大意 給定整數序列 a₁..aₙ (n ≤ 10⁴),求等差數列 bᵢ = b₁ + (i-1)d,使 Σ(aᵢ - bᵢ)² 最小。輸出 b₁ 和 d,誤
Fresco 源碼解析:Hierarchy-View-Controller (HVC) 架構深度剖析
架構總覽:MVC 在 Fresco 中的對應 MVC 角色Fresco 類別職責 ModelDraweeHierarchy層次化可繪製物結構,持有圖片載入狀態
HDU 1232 暢通工程 解題報告:並查集統計連通分量
題目大意 給定 N (<1000) 個城鎮與 M 條道路,道路連接兩城鎮。目標使任意兩城鎮連通(可間接)。求最少還需建設多少條道路。輸入多組,N=0 結束。
從 Cocos2d-x 專案入口窺探代理模式實戰應用
背景:設計模式不只是理論 《設計模式》一書出版至今,模式已成共識,但許多開發者仍覺得「書本晦澀、專案無處應用」。本文以 Cocos2d-x 2.2.6 為例,從
POJ 2155 Matrix 解題報告:二維樹狀數組區間翻轉與點查詢
題目大意 N×N 矩陣初始全 0。兩種操作: C x1 y1 x2 y2:矩形區域 (x1,y1) 到 (x2,y2) 所有元素翻轉 (0↔1)。 Q x y
POJ 2184 Cow Exhibition 解題報告:01 背包變形處理負權值
題目大意 N (≤100) 隻牛,每牛有智力 Sᵢ 和趣味 Fᵢ(均可為負,範圍 [-1000,1000])。選擇子集使 TS = ΣSᵢ ≥ 0、TF = Σ
BZOJ 3998 TJOI2015 弦論 解題報告:後綴自動機求第 K 小子串
題目大意 給定字串 S(長度 ≤ 500,000),查詢嚴格/非嚴格第 K 小子串(字典序)。嚴格指不同子串各算一次;非嚴格指子串按出現次數重複計算。 核心資
LeetCode Permutations 解題詳解:回溯法生成全排列
題目重述 給定不重複整數陣列 nums,返回其所有可能的全排列。 例:[1,2,3] → [1,2,3], [1,3,2], [2,1,3], [2,3,1],