POJ 2485 Highways:最小生成樹中最大邊權最小化,Prim 算法求解
問題描述 N (≤ 500) 個村莊,給定兩兩距離矩陣。要建設高速公路使所有村莊連通,目標是使最長的一條高速公路長度最小。輸出該最小可能的最大長度。 關鍵結論
HDU 4496 D-City:逆向並查集動態維護連通塊數量
問題描述 給定無向圖 n 個節點、m 條邊。按輸入順序依次刪除邊,每次刪除後輸出當前圖的連通塊數量。 逆向思維 + 並查集 直接刪除邊難以維護連通性。逆向考慮
POJ 3026 Borg Maze:BFS 求關鍵點距離 + Prim 最小生成樹
問題描述 迷宮 x × y (≤ 50×50),包含起點 S 和若干外星人 A (≤ 100)。初始有一大群人在 S,每次可分裂。移動代價為所有群體走過步數之和
POJ 1442 Black Box:Treap 維護動態序列,支持插入、查詢前 k 大
問題描述 給定長度 n 的初始序列,和 q 個查詢位置 q_1 < q_2 < ... < q_q。依次將序列元素插入數據結構,每當當前元素個數達到某個 q_i
C++ 對象內存佈局:非靜態成員、虛函數指針、靜態成員、成員函數
問題 一個類包含:虛函數 print()、非靜態 int a、靜態 double b。其對象佔用多少內存?具體包含什麼? 答案:8 字節(32 位系統) 對象
POJ 1066 昂貴的聘禮:圖中帶等級限制的最短路,枚舉最高等級跑 Dijkstra
問題描述 有 N (≤ 100) 個物品,物品 1 是目標(酋長允諾)。每個物品有價格 P、等級 L、若干替代品 (T, V):用物品 T 付 V 金幣可換取該
SGU 319 Kalevich Strikes Back:線段樹掃描線維護矩形包含關係,DFS 計算面積
問題描述 給定一個 W × H 的大矩形,內部有 n 個不相交但可能包含的子矩形(邊平行坐標軸)。這 n 個矩形將大矩形分割成 n+1 個區域(包括矩形本身及其
POJ 3580 SuperMemo:Splay 樹區間操作(翻轉、循環移位、插入、刪除、區間加、區間最小值)
問題描述 初始序列長度 n (≤ 100000),支持 M (≤ 100000) 次操作: ADD x y D:區間 [x, y] 每個數加 D。 REVER
C++ Primer 學習筆記 41:STL 實踐與分析(15)——深入算法應用技巧
進階算法應用技巧 1. 自定義比較與投影(C++20 ranges 風格) struct Person { string name; int age; };
查找以指定字符開始和結尾的子串數量:O(n) 線性掃描算法
問題描述 給定字符串,統計以 A 開頭、以 B 結尾的子串個數(子串字符在原串中順序不變,可不連續)。例如 CABAAXBYA 中有 4 個:AB, ABAAX
POJ 1860 Currency Exchange:Bellman-Ford 判斷正權環(套利機會)
問題描述 有 N 種貨幣,M 個兌換點。每個兌換點專營兩種貨幣 A, B,提供雙向匯率 R_AB, R_BA 和手續費 C_AB, C_BA(手續費以源貨幣扣除
UVA 311 Packets:貪心裝箱,6×6 箱子裝 1×1 到 6×6 包裹
問題描述 有 6 種包裹,尺寸分別為 1×1、2×2、3×3、4×4、5×5、6×6,需裝入 6×6 的箱子。輸入每種包裹的數量,求最少需要多少個箱子。多組測試
HDU 2852:樹狀數組實現動態第 k 大查詢(插入、刪除、查找大於 x 的第 y 個數)
問題描述 維護一個動態整數集合,支持三種操作(N ≤ 100000,數值範圍 [1, 100000]): 0 x:插入 x。 1 x:刪除一個 x(不存在輸出
C++ Primer 學習筆記 40:STL 實踐與分析(14)——算法概述與初探
STL 算法概述 STL 算法(<algorithm>)提供了一組通用的、高效的模板函數,作用於迭代器範圍,不依賴具體容器類型。核心優勢:算法與容器
ZOJ 3644 Kitty's Game:記憶化搜索 + 約數狀態壓縮 DP
問題描述 有向圖 n 個節點,m 條邊,每個節點有一個數值 num[i]。從節點 1 出發,沿邊移動,每次移動到節點 v 時,當前分數更新為 lcm(分數, n
HDOJ 1890 Robotic Sort:Splay 樹模擬區間翻轉排序,輸出操作序列
問題描述 有一條長度為 N (≤ 100000) 的樣本序列,機械臂每次可選擇一段連續區間 [A, B] 並將其反轉。採用以下演算法排序: 找到最小元素的位置
POJ 3253 Fence Repair:哈夫曼樹 / 小根堆合並木板,最小化切割成本
問題描述 農夫約翰需要 N (≤ 20000) 塊指定長度的木板,他買了一塊總長度等於所有木板長度之和的長板。每次切割一塊木板的費用等於該木板當前的長度。請安排