LeetCode 經典題目:ZigZag Conversion 鋸齒轉換完整解析
題目簡介 ZigZag Conversion 是 LeetCode 上一道經典的字符串操作題目。給定一個字符串和指定的行數,將字符串以「Z」字形(鋸齒狀)排列後
POJ 1745 Divisibility:線性 DP 判斷加減號組合能否被 K 整除
題目大意 給 n (≤ 10000) 個整數,在其間填 + 或 -,使表達式結果能被 k (≤ 100) 整除。輸出 Divisible 或 Not divis
POJ 2126 Factoring a Polynomial:代數基本定理判斷多項式可約性
題目大意 2 必可分解,n<2 不可分解(一次式不可約)。 核心數學定理:代數基本定理推論 實係數多項式在實數域內,不可約因式次數僅能為 1 或 2。 因此
POJ 2826 An Easy Problem?!:兩線段槽蓄水量計算幾何
問題描述 給定兩條線段(木板),形成一個槽,雨水垂直落下。求槽能蓄多少水。若兩線段不相交、平行、一條水平、或一條完全覆蓋另一條,則蓄水量為 0。否則計算交點與高
NYOJ 296 Candy Splitting:異或性質與貪心分配
問題描述 將一組糖果分成兩堆,使兩堆糖果數量的異或值相等。若可能,輸出較大堆的糖果總數(最大化);否則輸出 NO。 核心洞察:異或為 0 的充要條件 設兩堆異
BZOJ 3265 志願者招募加強版:單純形法模板應用
問題背景 與 BZOJ 3112 類似,給定約束條件求線性規劃最優值。數據規模較大,需高效單純形實現。 模型構建 變量:每個志願者是否選擇(0/1),但線性
HLJ 1171 大素數判定:預篩√N + 試除法
問題描述 多測試用例,每個給一個 n (< 109),判斷是否為素數。輸出 YES/NO。 算法策略:預篩小質數 + 試除 直接試除到 √n (≤ 31623
BZOJ 3112 ZJOI 2013 防守戰線:單純形法解線性規劃
問題背景 給定 m 條約束、n 個變量的線性規劃問題,求最大值。數據規模要求用單純形法(單純形算法)求解。 單純形法核心思想 將不等式約束轉化為標準形: ma
ZOJ 2107 / HDU 1007 Quoit Design:分治法求平面最近點對
問題描述 給定平面上 N (≤105) 個點,求最近點對距離除以 2(即最大不重疊圓半徑)。經典最近點對問題。 分治算法 O(N log N) 按 x 排序
HDU 4549 M-斐波那契數列:矩陣快速冪與歐拉定理取模
問題描述 定義數列:F[0]=a, F[1]=b, F[n]=F[n-1] × F[n-2] (n1)。求 F[n] mod 1,000,000,007。a,b
HDU 5188 限制條件 01 背包:時間約束下的動態規劃
問題描述 有 n (≤30) 個物品,第 i 個耗時 ti、價值 vi、最早可完成時間 li(在此之前完成會被判定作弊)。需選擇物品使總價值 ≥ w,求最小總耗
C/C++ 隨機數生成詳解:srand/rand 與區間映射技巧
核心函數 srand(seed):設置隨機種子。同一種子產生的序列完全相同。 rand():返回 [0, RAND_MAX] 內的偽隨機整數(RAND_MAX
HDU 1007 / POJ 1007 Wall:凸包周長與格雷厄姆掃描法
問題描述 給定 N 個點(城堡頂點),求包含所有點且距離每個點至少 L 的最短圍牆長度。等價於:求點集凸包周長,再加上半徑為 L 的圓周長(2πL)。結果四捨五
HDU 4193 單調隊列解環形數組前綴和非負問題
問題描述 給定長度為 n 的環形數組,求以多少個位置為起點,使得從該位置開始的前綴和均非負(即沿環走一圈,任意前綴和 ≥ 0)。 核心思路:前綴和 + 單調隊
HDU 5187 計數問題:排列中單調段的組合數學解法
問題描述 從 1~n 的排列中,有多少種排列滿足:存在某個位置 i,使得前綴 a1~ai 單調遞增或遞減,且後綴 ai~an 也單調遞增或遞減。答案模 p 輸出
HDU 4965 矩陣快速冪優化:從 N×N 到 K×K 的降維技巧
問題背景 給定 N×K 矩陣 A 和 K×N 矩陣 B(元素 0~5),計算 C = A×B(N×N),再求 M = CN2,最後對每個元素取模 6 求和。N
LeetCode Palindrome Number:不轉字符串判斷回文數
問題描述 判斷一個 32 位有符號整數是否為回文數。負數不是回文;不能使用額外空間(即不能轉字符串);反轉整數可能溢出需處理。 核心思路:半數反轉 將整數後一
FAFUOJ 1572 Big Castle 樹形 DP (狀態壓縮)
問題 給定一棵樹,每個節點初始狀態 0/1。操作:選一節點翻轉自身及所有鄰居。問能否使所有節點變為 1。n ≤ 50000。 樹形 DP 狀態定義 `dp[u