兩個有序序列的中位數:歸併與二分查找解法
兩個有序序列的中位數:歸併與二分查找解法 給定兩個遞增整數序列 S1(長 M)和 S2(長 N),求合併後序列的中位數。中位數定義為合併後非遞減序列中間位置的數
POJ 1222 EXTENDED LIGHTS OUT:高斯消元解 5×6 燈謎
POJ 1222 EXTENDED LIGHTS OUT:高斯消元解 5×6 燈謎 5 行 6 列按鈕,每個按鈕有燈(0 滅、1 亮)。按下按鈕會翻轉自身及上下
HDU 1003 Max Sum:最大子段和與區間端點輸出
HDU 1003 Max Sum:最大子段和與區間端點輸出 給定長度 n (≤ 100000) 的整數序列(含負數),求最大子段和,並輸出該子段的起始和結束位置
POJ 1753 Flip Game:高斯消元解 4×4 翻棋遊戲
POJ 1753 Flip Game:高斯消元解 4×4 翻棋遊戲 4×4 棋盤,每格黑/白。操作:選一格,翻轉它及其上下左右相鄰格。目標:全白或全黑。求最少步
POJ 3067 Japan:樹狀數組計算超級高速公路交叉數
POJ 3067 Japan:樹狀數組計算超級高速公路交叉數 東岸 N 個城市、西岸 M 個城市(N,M ≤ 1000),K 條高速公路連接東西兩岸城市(編號由
C# 轉型 C++ 之路(一):常量、自增、long 類型差異詳解
C# 轉型 C++ 之路(一):常量、自增、long 類型差異詳解 全職投入 C/C++ 學習,首要任務是搞清與 C# 的核心語法差異。本文整理三個最易踩坑的基
POJ 3185 The Water Bowls:高斯消元解 20 燈開關問題
POJ 3185 The Water Bowls:高斯消元解 20 燈開關問題 有 20 個碗排成一列,狀態 0(正)或 1(倒)。操作:選一個碗翻轉,會連帶翻
UVA 1428 Ping pong:樹狀數組計算合法裁判方案數
UVA 1428 Ping pong:樹狀數組計算合法裁判方案數 題目給出 n 位選手的能力值(互不相同),每場比賽需選 3 人:兩名選手與一名裁判。裁判必須住
UVa 10806 Dijkstra, Dijkstra:最小費用流求雙向不重邊最短路
UVa 10806 Dijkstra, Dijkstra:最小費用流求雙向不重邊最短路 題目要求在無向圖中,從節點 1(監獄)到節點 n(火車站)再返回,來回兩
URAL 1752 Tree 2:樹的直徑與 LCA 倍增求解距離為 d 的節點
URAL 1752 Tree 2:樹的直徑與 LCA 倍增求解距離為 d 的節點 本題要求在一棵樹中,給定一個節點 v 和距離 d,找出與 v 距離恰好為 d
ZOJ Monthly August 2014 題解彙總:構造、DP、模擬、幾何、拓撲
比賽題目總覽 ZOJ Monthly 2014.08 包含 9 道題(A-I),涵蓋構造、動態規劃、模擬、DFS、計算幾何、拓撲排序等類型。 A 題:構造排列
HDU 4981 Goffi and Median:中位數與平均值比較
問題描述 所有數之和。 平均值?輸出 YES/NO。 解法 讀入數組,計算總和 sum 排序數組 中位數 = a[(n+1)/2](1-based,排序後
POJ 1039 Pipe:計算幾何 + 雙指針枚舉光線路徑
問題建模 管道由上下兩條折線構成:上邊 (x_i, y_i),下邊 (x_i, y_i-1)。 光源在 (x_1, y_1-1) 到 (x_1, y_1) 線段
HDU 1231 最大連續子序列和:動態規劃 O(N) 解法
問題描述 給定長度 N (≤10000) 的整數序列(可正可負),求最大連續子序列和,並輸出該子序列的起始和結束位置(1-based)。 全負數時輸出最大值(負
UVA 11235 Frequent values:非遞減序列區間眾數 RMQ 解法
題目特性利用 序列非遞減,相同數字連續分佈。區間 [i, j] 內出現最多的數,必須是以下三種情況之一: 左端點值 a[i] 的連續段在區間內的長度 右端點值
C++ 設計模式深度解析:策略模式與遊戲武器系統實戰
什麼是策略模式? 定義:定義一系列算法類,將每個算法封裝起來,使它們可以相互替換。策略模式讓算法的變化獨立於使用算法的客戶端,屬於對象行為型模式。 核心目的:將
UVA 10909 Lucky Number:樹狀數組構造幸運數列 + 雙指針查詢
幸運數定義與構造 幸運數生成過程(約瑟夫環變體): 初始列出所有奇數:1, 3, 5, 7, 9, 11, 13, 15, 17, 19, ... 第 2 個