POJ 3522 Slim Span:枚舉最小邊求最苗條生成樹
問題描述 給定無向加權圖,求生成樹中「最大邊權 - 最小邊權」的最小值。n ≤ 100, m ≤ n(n-1)/2。 解法:枚舉最小邊 + Kruskal
POJ 1679 判斷最小生成樹唯一性:Kruskal 統計等效邊與必選邊
問題描述 給定無向連通圖,判斷其最小生成樹(MST)是否唯一。若不唯一輸出 Not Unique!,否則輸出 MST 總權重。n ≤ 100。 判斷準則 在
HDU 2063 過山車:二分圖最大匹配(匈牙利算法)
問題描述 有 M 個女生、N 個男生,K 個願意配對的關係。每排坐兩人,必須一男一女。求最多能湊成多少對(即最大匹配數)。M,N ≤ 500, K ≤ 1000
POJ 1692 Crossed Matchings:DP 求交叉匹配最大對數
問題描述 給兩行數字序列,求最大匹配對數。規則: 匹配數字必須相同。 每對匹配必須有且僅有一對與之交叉,且交叉的兩對數字不同。 每個數最多用一次。 DP
C++ MFC 筆記 Day 10:樹控件、屬性頁、多線程
一、樹型控件 (CTreeCtrl) 1. 相關類 CTreeCtrl:控件類,繼承 CWnd。 CTreeView:視圖類,繼承 CCtrlView,內部封
HDU 1087 最大上升子序列和:O(N²) DP 入門
問題描述 給定長度 a (≤ 1000) 的序列,求嚴格上升子序列的最大和。 DP 定義與轉移 w[i]:以第 i 個元素結尾的最大上升子序列和。 初始:w
UVA 812 Trade on Verweggistan:暴力 DFS 求最大利潤與前 10 購買方案
問題描述 有 w 種貨物,第 i 種有 b_i 個價格序列。商人必須從第一個開始連續購買(即若買第 k 個,則前 k-1 個必須全買)。每種貨物選擇一個前綴購買
POJ 2762 強連通分量 + 拓撲排序判斷任意兩點可達
問題描述 給定有向圖 n 點 m 條邊,判斷對任意兩點 u, v,是否存在 u→v 或 v→u 的路徑(至少一方向可達)。輸出 Yes/No。 核心思路 縮
POJ 3282 Ferry Loading IV:雙隊列模擬渡輪裝車
問題描述 渡輪長度 l 米,初始在左岸。m 輛車按到達順序給出長度(厘米)和岸邊。渡輪每次航行裝載當前岸邊隊列中盡可能多的車(先到先裝,總長 ≤ l×100),
SDUT 並查集:統計與 0 號同學試卷相同的人數
問題描述 有 n 個學生(編號 0~n-1),已知 m 對關係 (a, b) 表示 a 和 b 試卷相同。求與 0 號學生試卷相同的其他學生人數(不含 0 號)
POJ 2774 後綴數組求最長公共子串:倍增 + LCP
問題描述 給定兩個字符串,求它們的最長公共子串長度。多組測試數據,以 EOF 結束。 核心思路 將兩字符串用一個不在字符集中的特殊字符(如 # 或 $)連接
HDU 2391 Filthy Rich:網格最大路徑和 DP
問題描述 給定 b×c 的網格,每個格子有值 s[i][j]。從 (0,0) 走到 (b-1, c-1),每步只能向右、向下或向右下(即從左上三個方向轉移)。求
CF 52C Circular RMQ:線段樹區間更新處理環形數組
問題描述 給定長度 n (≤ 200,000) 的環形數組,支持兩種操作: inc(lf, rg, v):區間 [lf, rg] 每個元素加 v(v 可負)。
HDU 3657 方格取數:最小割建模奇偶二分圖
問題描述 給定 n×m 方格,每個格子有權值 w。選擇若干格子獲取權值,但若兩個相鄰格子同時被選中,需支付代價 2×(w₁ & w₂)(按位與)。求最大
POJ 2185 Milking Grid:KMP + LCM 求最小覆蓋矩陣
問題建模 給定 n×m 字符矩陣,尋找面積最小的「覆蓋矩陣」,使得原矩陣可由該覆蓋矩陣在水平和垂直方向重複鋪貼得到。等價於:分別求每行的最小周期長度(水平周期)
HDU 1226 超級密碼:BFS + 同餘剪枝尋找最小倍數
問題描述 給定十進制整數 N (0 ≤ N ≤ 5000)、進制 C (2 ≤ C ≤ 16) 以及 M 個允許使用的數字(可能包含 A-F 表示 10-15)
HDU 1280 解析:哈希表統計求前 M 大兩數之和
問題背景 HDU 1280「前 M 大的數」是一道經典的哈希表應用題。給定一個包含 N(N ≤ 3000)個正整數的序列,每個數不超過 5000。需要從這些數兩