UVA 644 Immediate Decodability:前綴碼判斷
題目簡介 給定一組字符串,判斷是否存在某字符串是另一字符串的前綴。若無前綴關係則輸出 immediately,否則 not immediately。多組測試資料
LeetCode Palindrome Linked List:O(1) 空間判斷回文鏈表
題目簡介 給定一個單鏈表,判斷是否為回文結構。要求時間 O(n),空間 O(1)。 解題思路 單鏈表無法反向遍歷,解法是將前半部分鏈表反轉,再與後半部分比較:
UVA 558 Wormholes:Bellman-Ford 判斷負環
題目簡介 給定 n 個星系(節點)和 m 個蟲洞(有向邊),每條邊有權值 t(可為負數,表示時間差)。判斷圖中是否存在負權環(即可無限回到過去)。多組測試資料,
POJ 2784 Buy or Build:最小生成樹與子網絡購買策略
題目簡介 有 n 個城市(n ≤ 1000)和 q 個現有子網絡(q ≤ 8)。每個子網絡包含若干城市,購買成本固定,不可拆分。若不購買子網絡,任兩城市間建邊成
HDU 1019 Least Common Multiple:求 n 個數的最小公倍數
題目簡介 給定 t 組測試資料,每組包含 n 個整數,求這 n 個數的最小公倍數 (LCM)。 解題思路 利用公式 lcm(a, b, c) = lcm(a,
HDU Swipe Bo:BFS + 狀態壓縮解迷宮謎題
題目背景 「Swipe Bo」是一款益智遊戲,主角是一個方形的藍色豆腐 Bo。玩家可以向上/下/左/右滑動,Bo 會沿直線移動直到撞牆。目標是用最少步數將 Bo
HDU 2830 Matrix Swapping II:列交換後最大全 1 子矩陣面積
題目簡介 給定一個 N × M 的 0/1 矩陣,可以任意交換列。交換後,求由 1 組成的最大子矩陣面積(即「goodness」)。多組測試資料,N, M ≤
HDU 2845 Beans:雙重線性動態規劃解法詳解
題目簡介 在一個 M × N 的矩陣中,每個格子有一顆豆子,豆子具有不同的品質值。你需要選擇一些豆子食用,使總品質值最大。規則如下:若吃掉座標 (x, y) 的
Codeforces 305B Mike and Feet:單調棧求各長度區間最小值的最大值
題目大意 n (≤2×10⁵) 隻熊站成一排,高度 a[i]。對每個長度 x (1≤x≤n),求所有長度為 x 的連續區間中,最小值的最大值。 單調棧 + 長
C++ std::string 完全指南:構造、操作、迭代器與 C 風格互轉
頭文件與命名空間 #include using std::string; // 或 using namespace std; 構造與初始化 語法說明
POJ 3069 Saruman's Army:貪心最少雷達覆蓋所有軍隊
題目大意 數軸上有 n (≤1000) 支部隊,位置 x[i]。雷達覆蓋半徑 R,必須放在部隊位置上。求最少雷達數覆蓋所有部隊。 貪心策略 部隊位置排序。從左
POJ 2559 Largest Rectangle in a Histogram:單調棧求直方圖最大矩形面積
題目大意 直方圖由 n (≤100,000) 個寬度為 1 的矩形組成,高度為 h[i]。求能包含在直方圖內的、底邊在基線上的最大矩形面積。 單調棧經典解法
POJ 2796 Feel Good:單調棧求區間最小值×區間和最大值
題目大意 給定 n (≤100,000) 個非負整數 a[i]。定義區間 [l, r] 的價值 = (∑_{i=l}^r a[i]) × min_{i=l}^r
C/C++ 預處理器 # 與 ## 運算符:字符串化與標記粘合
# 字符串化運算符 在宏定義中,#參數 將實參轉換為字符串字面量(自動加雙引號、轉義)。 #define STR(x) #x STR(hello)
LeetCode 18 4Sum:雙指針 + 去重的 K-Sum 通用框架
題目大意 給定數組 nums 和目標值 target,找出所有不重複的四元組 [a,b,c,d] 使和為 target。四元組內非降序,解集不重複。 K-Su
LeetCode 43 Multiply Strings:大數相乘的模擬列豎乘法
題目大意 兩個非負整數以字符串形式給出(長度任意),返回它們的乘積字符串。不允許使用內置大整數庫(Java 除外,可用 BigInteger)。 模擬列豎乘法
LeetCode 41 First Missing Positive:原地哈希 O(n) 時間 O(1) 空間
題目大意 未排序整數數組,找出最小的缺失正整數。要求 O(n) 時間、O(1) 額外空間。 例:[1,2,0]→3, [3,4,-1,1]→2。 原地哈希核心
SPOJ 297 Aggressive cows:二分答案求最大最小間隔
題目大意 n 個棧位置(已排序),選 c 個棧放牛,使任意兩頭牛之間的最小距離盡可能大。輸出這個最大的最小距離。 二分答案 + 貪心驗證 若固定最小距離 d,