ZOJ 3229:有源匯上下界最大流標準模板(Dinic)
題目大意 屌絲給 m 個女神拍照,計劃 n 天。每天最多拍 C 個女神,每天照片數 ≤ D。每個女神 i 每天拍照數 ∈ [L_i, R_i]。每個女神 n 天
POJ 3071 Football:錦標賽冠軍概率 DP
題目大意 2^n 支球隊進行單敗淘汰賽(n ≤ 10)。給定任意兩隊 i,j 的勝率 p[i][j](p[i][j] + p[j][i] = 1)。求最終奪冠概
POJ 3321 Apple Tree:DFS 序 + 線段樹/樹狀數組動態維護子樹蘋果數
題目大意 一棵樹(N ≤ 100000),根為 1。初始每個節點有 1 個蘋果。M ≤ 100000 個操作: C x:翻轉節點 x 的蘋果狀態(有→無,無→
UVA 10690 Expression Again:DP 分組求和乘積極值
題目大意 給定 N+M 個整數(範圍 -50~50,N,M < 51),分成兩組,大小分別為 N 和 M。求 (組1和) × (組2和) 的最大值與最小值。≤1
HDU 4944 FSF's Game:遞推預處理與模 2^32 總金幣計算
題目重述 矩形 A×B 分割為 K×K 正方形(K 整除 A,B),獲得 A*B / gcd(A/K, B/K) 金幣。所有 1≤B≤A≤N 的矩形各分割一次,
C++ stringstream、ostringstream、istringstream 完整使用指南
三大類別概覽 類別頭文件用途繼承自 istringstream<sstream>從字符串讀取(輸入流)istream, stringstreamb
Codeforces 370A Rook, Bishop and King:棋子最少移動步數
題目大意 在 8×8 國際象棋棋盤上,給定起點 (r1,c1) 和終點 (r2,c2)。求車、象、王移動到終點的最少步數。無法到達輸出 0。 棋子移動規則
HDU 4300 Clairewd's Message:KMP 解密還原完整字符串
題目大意 給定一個替換表(第 i 個字母用哪個字母表示),以及一個字符串,前半部為密文,後半部為明文(密文完整,明文可能不全)。利用替換表將密文轉為明文,再用
設計模式:職責鏈模式詳解與 Effective C++ 關鍵條款筆記
職責鏈模式 定義:使多個對象都有機會處理請求,從而避免請求發送者與接收者的耦合。將對象連成一條鏈,沿鏈傳遞請求,直到有對象處理為止。 核心角色 Handle
HDU 1828 / POJ 1177 Picture:掃描線+線段樹+離散化求矩形周長
題目核心 給定 N 個矩形,求它們聯集的周長。N ≤ 5000,坐標範圍需離散化。 算法思路:雙向掃描累加邊長變化 周長 = 水平邊長總和 + 豎直邊長總和。
HDOJ 4939 Stupid Tower Defense:DP 優化塔防傷害(簡潔版)
核心結論 紅塔必放最後。設 dp[i][j] 為前 i 座塔(不含紅塔)中放 j 座綠塔的最大傷害貢獻。最終枚舉紅塔數 red,綠塔數 blue 計算總傷害。
HDU 1828 Picture:矩形聯集周長雙掃描線與單掃描線兩種解法
題目同 POJ 1177 求 n < 5000 個矩形聯集的周長。本文提供兩種掃描線實現。 方法一:雙向掃描線(橫向+縱向分別掃描) 思路:垂直邊用 x 掃描
HDU 1231 最大連續子序列和:DP 求解並輸出端點值
題目大意 給定長度 N 的整數序列(可正可負),求最大連續子序列和,並輸出該子序列的首尾元素值。若最大和為負,輸出 0 首元素 尾元素。 DP 狀態與轉移 d
HDU 4944 FSF's Game:遞推預處理 O(1) 回答(另解視角)
遞推關係重新推導 定義 f(i,j) = i*j / gcd(i/k, j/k),其中 k 為 i,j 的公因子。實際上 k 遍歷 gcd(i,j) 的所有因數
HDU 3234 Exclusive-OR:帶權并查集維護異或關係
題目大意 有 n ≤ 20000 個未知變量 X₀..Xₙ₋₁(值 < 2²⁰)。Q ≤ 40000 個操作: I p v:告知 Xₚ = v I p q v
POJ 1177 Picture:掃描線求矩形聯集周長
題目大意 給定 n < 5000 個矩形(座標整數,範圍 [-10000,10000]),求它們聯集的周長。 核心思想:雙向掃描線 + 線段樹 周長 = 水平
HDU 1693 Eat the Trees:插頭 DP 入門詳解
題目大意 N×M 網格(N,M ≤ 11),每格有樹(1)或無樹(0)。需用若干不相交的簡單環覆蓋所有有樹格子,環只能經過有樹格子。求覆蓋方案數。結果不超過 2