並查集入門:PKU 1611 Suspects 病毒傳播分組
問題描述 有 n 個學生(編號 0~n-1),m 個小組。每組學生之間視為密切接觸(傳染關係)。若學生 0 感染,求最終感染人數(即與 0 連通的學生數)。
階乘問題專題:末尾零、位數、最後非零位與排列組合應用
階乘問題分類 階乘相關問題主要分為四類: 末尾 0 的個數 十進制位數 最後非零位(最核心、最難) 階乘和表示問題(搜索/DP) 1. 末尾 0 的個數
HDU 4534 新聞淨化:AC 自動機 + DP 多條件字串優化
問題描述 給定一組模式串,分為三類: 必選串(val = 999):最終字串**必須**包含。 禁用串(val = -999):最終字串**不能**包含。 得
Codeforces 178B:橋邊、雙連通分量與 LCA 離線查詢
問題描述 給定一個 n 點 m 邊的無向連通圖(無重邊、自環),有 q 個查詢,每次詢問兩點 S, T 之間有多少條**橋邊**(割邊)。橋邊定義為:刪除後圖不
ATL 專案中正確使用 CString 的配置方法
問題背景 在 ATL (Active Template Library) 專案中預設不包含 MFC 的 CString 類別。若直接使用會導致編譯錯誤,需透過特
HDU 1394 Minimum Inversion Number:線段樹求逆序數最小值
問題描述 給定一個由 0 ~ n-1 構成的排列,定義逆序數為 i < j 且 a[i] > a[j] 的數對個數。將第一個元素移至末尾可得到新排列
HDU 4501 買年貨:三維背包問題完整解析
問題描述 小明有 v1 元現金、v2 點積分、k 張免費券(可免費拿 k 件商品)。超市有 n 件商品,每件有價格 a、所需積分 b、價值 val。購買任一商品
HDU 4522 最短路問題:雙圖 SPFA 解法詳解
問題描述 給定火車路線圖,每條邊屬於「硬座」或「軟臥」兩種類型之一(或兩者皆有)。已知硬座與軟臥的單位不適度,求從起點到終點的最小總不適度。 解題思路 核心觀
Linux 核心 file_operations 結構體深度解析
簡介 file_operations 是 Linux 核心中字元裝置驅動程式的核心結構體,定義於 linux/fs.h。它包含一系列函數指標,對應使用者空間的系
Manacher 演算法與最小區間覆蓋:ZOJ 3296 解題詳解
問題背景 給定一個字串,求最少需要拼接幾次才能組成該字串。每次拼接只能組合兩個回文子串,且允許重疊。這是一個將回文特性與區間覆蓋問題相結合的經典題目。 解題策
演算法解析:字串轉回文與最小操作次數計算
問題描述 給定一個字串,我們需要透過最少的相鄰字元交換操作,將其轉換為回文串。若無法形成回文,則輸出 Impossible。這是一個經典的字串操作與貪心策略結合
C++11 封裝 Win32 GUI 庫:從 thunk、property 到 layout 系統完整架構設計
前言:為什麼要自己造輪子? Win32 API 雖強大但冗長繁瑣:CreateWindow 參數多達 11 個,訊息迴圈、回調函式、資源管理樣板代碼繁多。MFC
C++ 三角形類別進階:預設建構子、參數建構子與三角形驗證
Triangle 類別完整實作 本文展示一個完整的 Triangle 類別,包含預設建構子、參數建構子、三角形合法性驗證、周長面積計算與資訊顯示,適合 C++
BZOJ 2732 [HNOI2012] 射箭:半平面交與二分查找最多通關數
問題建模 原點 (0,0) 射出拋物線 y = kx - cx² (c0)。第 i 關靶子為垂直線段 x = xi, y ∈ [yi1, yi2]。拋物線通過靶
UVA 1178 Bumpy Objects:凸包與重心穩定性判斷幾何解法
問題重述 給定多邊形頂點(按順序)與重心座標,判斷多邊形放置在水平面上時,哪些邊可以作為穩定底邊。穩定條件:重心在該邊所在直線上的投影落在該邊的線段內(含端點)
ZOJ 1610 Count the Colors:區間染色與線段樹解法詳解
問題描述 在長度 8000 的數軸上進行 n 次區間染色操作(不包含端點),每次指定區間 [L, R) 與顏色 c。最終統計每種顏色佔據的連續區段數量。 關鍵
UVA 12452 監控樹問題:樹形 DP 與手寫棧遞歸優化
問題描述 給定一棵樹,需在節點安裝監控攝影機。三種方案: 方案 A:節點裝攝影機,成本 500,覆蓋自身、父節點、所有子節點 方案 B:節點裝攝影機,成本 1
完全數求解:1000 以內完全數 C++ 實作與常見錯誤分析
什麼是完全數? 完全數 指一個正整數等於其所有真因子(不包含自身的約數)之和。最小的完全數: 6 = 1 + 2 + 3 28 = 1 + 2 + 4 + 7