HDU 3401 Trade:單調隊列優化DP解決股票交易問題
問題描述 T天股票交易,每天給定買入價AP[i]、賣出價BP[i]、買入上限AS[i]、賣出上限BS[i]。最多持倉MaxP股。初始0股。每天可買入/賣出/持有
Boost.Tuple詳解:多返回值、結構化綁定、元組操作全指南
為什麼需要Tuple? C++函數只能返回單一值。需返回多值時,傳統做法: 輸出參數(指針/引用)— 可讀性差,調用處不明確。 自定義struct/class
HDU 水果銷售統計:巢狀Map按產地/名稱排序輸出
問題描述 統計水果銷售記錄:每筆含水果名稱、產地、銷量。輸出報表:按產地字母序分組,組內按水果名字母序排列,顯示累計銷量。格式:產地名單獨一行,水果行縮進 |
HDU 1029 多數元素:Map統計頻率查找眾數
問題描述 給定奇數N(≤999999)和N個整數,其中必有一個整數出現次數≥(N+1)/2。求該整數。多組測試數據,EOF結束。 解法:哈希表計數 遍歷N個數
POJ 2491 旅行路線重構:Map構建鏈表還原行程
問題描述 給定N-1張機票,每張記錄出發地 目的地。機票構成一條完整路徑(無環、無分支),求從起點開始的完整行程。多組測試數據。 解法:雙向Map定位起點與重
POJ 2245 組合生成:DFS輸出所有6元子集
問題描述 6)個遞增排序的整數,輸出所有由這K個數中選取6個數組成的組合,每行一個組合,數字間空格分隔。多組測試數據,K=0結束。組合內數字按輸入順序(遞增)輸
MFC 滑桿條搭配編輯框實作參數設定介面
應用場景 屬性頁/對話方塊中,使用者以滑桿條(Slider Control)直觀調整數值,編輯框(Edit Control)同步顯示並允許精確輸入。 步驟 1
ZJUT 1317 擲飛盤:高斯消元法求期望步數
問題描述 M個人圍成一圈,兩個飛盤初始間隔N人(順時針方向)。每輪每個飛盤以1/2概率獨立傳給左/右鄰居。求兩個飛盤首次落在同一人手中的期望輪數。若無法相遇輸出
Frogger 問題:最小化最大跳躍距離的Dijkstra變種
問題描述 給定N個石頭坐標(N≤200),青蛙從石頭1跳到石頭2。青蛙每次跳躍的距離為兩石頭間歐幾里得距離。求一條路徑,使得路徑上最大單次跳躍距離最小。輸出該最
POJ 1009 圖像邊緣檢測:RLE壓縮下的邊緣檢測優化算法
問題描述 給定run-length encoding (RLE)壓縮的圖像(寬度W,像素值0-255及連續長度),對每個像素計算其與8鄰域像素差值的絕對值最大值
C++模板元編程:typedef typename T::value_type 深度解析與自定義類型實踐
背景:神秘的 typename T::value_type 在C++模板代碼中常見typedef typename T::value_type value_ty
POJ 1523 SPF 單點故障:Tarjan割點算法與子網統計
問題描述 給定無向圖(節點編號1~1000,邊對列表輸入,0結束一個網絡,空網絡結束輸入),求所有割點(Single Point of Failure, SPF
最短包含所有目標字符的子串長度:O(n)滑動窗口優化解法
問題描述 給定字符串S和目標字符集合T(如abc),求S中包含T中所有字符(至少一次)的最短子串長度。例如S=daebfacba,T=abc,最短子串為cba或
UVA 10887 語言串聯:哈希表去重統計不同字符串組合數
問題描述 給定兩個語言集合A和B,A包含m個單詞,B包含n個單詞。從A中取一個單詞,從B中取一個單詞拼接,形成新單詞。求所有可能拼接結果中不同單詞的數量。多組測
HDU 4170 補給任務:全排列暴力搜索與計算幾何相遇時間
問題描述 飛機初始位於(x₀, y₀),速度為v km/h。海面上有N艘船(0 < N < 8),第i艘船初始位置(xᵢ, yᵢ),速度向量(vₓᵢ, vᵧᵢ)
POJ 1328 雷達安裝問題解析:貪心算法求解最小覆蓋區間
問題背景與描述 d),輸出-1。 核心思路:區間覆蓋轉化 對於海岸線上的雷達位置x_r,其覆蓋範圍為圓心(x_r, 0)、半徑d的圓。小島(x_i, y_i
POJ 1144 Network:無向圖割點查找的 Tarjan 算法模板應用
問題描述 給定無向圖(節點 1~n,邊無權)。求割點個數:刪除該點及其關聯邊後,圖的連通分量數增加的頂點。 Tarjan 算法核心原理 1. DFS 時間戳與
POJ 1089 Intervals:區間合併的貪心算法實現
問題描述 給定 n 個閉區間 [st, et]。若兩區間有重疊或相鄰,可合併為其並集。反覆合併至無法合併,輸出最終區間個數及各區間端點(按起點升序)。 貪心策