1. 程式人生 > >DP優化學習筆記

DP優化學習筆記

暑假的時候本來想把這些東西系統學一遍,但是想著NOIP不考就沒有學,現在也該補坑了…

1.單調佇列優化

待更

2.斜率優化

先從一個例題看起,HDU3507意思是你有一串數,你需要把他們分成很多段連續的子段,每一段的花費是子段內所有數的和的平方,求最小花費。

我們可以很容易列出一個狀態轉移方程,設 d p i

dp_i 為已經給 [ 1 , i ] [1,i] 這個區間分好段的答案,那麼 d
p i = min j = 1
i 1
d p j + ( k = j + 1 i C k ) 2 dp_i=\min_{j = 1}^{i-1}dp_j+(\sum_{k=j+1}^iC_k)^2
,這個轉移是 O ( n 2 ) O(n^2) 的,不足以通過這題 5 × 1 0 5 5\times10^5 的資料,我們需要優化它。

k < j < i k < j < i S i = j = 1 i C j S_i=\sum_{j=1}^iC_j ,我們來尋找什麼時候從 j j 轉移到 i i 比從 k k 轉移到 i i 更加優秀,我們可以列出一個不等式:
d p j + ( S i S j ) 2 d p k + ( S i S k ) 2 d p j + S i 2 + S j 2 2 S i S j d p k + S i 2 + S k 2 2 S i S k d p j d p k + S j 2 S k 2 2 S i ( S j S k ) d p j d p k + S j 2 S k 2 S j S k 2 S i dp_j+(S_i-S_j)^2\le dp_k + (S_i-S_k)^2 \\ dp_j+S_i^2+S_j^2-2S_iS_j\le dp_k+S_i^2+S_k^2-2S_iS_k\\ dp_j-dp_k+S_j^2-S_k^2\le 2S_i(S_j-S_k)\\ \frac{dp_j-dp_k+S_j^2-S_k^2}{S_j-S_k}\le2S_i

f x = d p x + S x 2 f_x=dp_x+S_x^2 ,那麼:
f j f k S j S k 2 S i \frac{f_j-f_k}{S_j-S_k}\le2S_i

我們可以知道當 f j f k S j S k 2 S i \frac{f_j-f_k}{S_j-S_k}\le2S_i

相關推薦

DP優化學習筆記

暑假的時候本來想把這些東西系統學一遍,但是想著NOIP不考就沒有學,現在也該補坑了… 1.單調佇列優化 待更 2.斜率優化 先從一個例題看起,HDU3507意思是你有一串數,你需要把他們分成很多段連續的子段,每一段的花費是子段內所有數的和的平方,求最小花費。 我們可以

區間dp 與 四邊形不等式優化 學習筆記

部落格目錄 很久之前在網上看了傳說中的四邊形不等式,然後現在發現忘光了。趁比賽前夕趕快拿來熟悉一下。 一、引入 形如: dp[i][j]=min{dp[i][k]+dp[k+1][j]+cost[i][j]} 的狀態轉移方程,如果不加優化的話ijk三層迴圈O(n

MySql5.6性能優化學習筆記

record 不包含 出現 傳遞 DC 嵌套查詢 exp range 序列 目標? 了解什麽是優化? 掌握優化查詢的方法? 掌握優化數據庫結構的方法? 掌握優化MySQL服務器的方法 什麽是優化?? 合理安排資源、調整系統參數使MySQL運行更快、更節省

動態DP學習筆記

一道模板題 動態 d p dp dp是貓學長髮

時序優化學習筆記

1.適當進行邏輯複製以優化設計速度(減少扇出) 邏輯複製是指當某個訊號扇出比較大時,會造成該訊號到各個目的邏輯節點的路徑變得過長,從而成為設計中的關鍵路徑,為了解決這個問題,可以通過在書寫程式碼時對該訊號進行復制,已達到分擔該訊號扇出過多的目的。 例如: assign a

電商資料庫設計及優化學習筆記彙總

一、背景 這是我學習高效能可擴充套件的MySQL設計及架構優化的學習筆記,學習過程中還有很多不懂的地方,特別是負載均衡的問題,先跟著老師的節奏記下來。 課程設計電商常用的功能模組的資料庫設計,常見問題的資料庫解決方案。 專案背景:設計一個電商資料庫,完成正常購物。 二、準備工作

hdu3507 斜率優化學習筆記

QWQ菜的真實。 首先來看這個題。 很顯然能得到一個樸素的 d p dp

Sql server 2008查詢效能優化學習筆記

一、在調整過程中,必須檢查各種可能影響基於Sqlserver的應用程式效能的硬體和軟體因素。你應該在效能分析中問自己以下的問題: 1.相同伺服器上有沒有執行其他的資源密集型應用? 2.硬體子系統是否能承受最大的工作負荷? 3.Sql server 是否被正確配置? 4.Sq

歸併排序演算法的優化——學習筆記

歸併排序是一種穩定排序,時間複雜度O(nlogn),空間複雜度O(n)。 那麼已經非常高效的歸併排序是否還能再優化呢?當然是可以的,timsort就是在歸併排序上改進的一種高階排序方式,現在廣泛運用在如python,Java等主流語言中。timsort是高效的,完整的演算法

優化學習筆記(1)——凸集

筆記是根據《Convex Optimization》寫的,序號對應章。 2 凸集 2.1 凸集(convex sets)   如果在集合C中的任意兩點滿足: θx1+(1−θ)x2∈C 其中0≤θ≤1,則集合C為凸集 2.2 重要例子 1) 超平面

優化學習筆記(2)——凸函式

筆記是根據《Convex Optimization》寫的,序號對應章。 3 凸函式 3.1 基本性質及例子   滿足如下條件的從n維對映到1維的函式稱凸函式: f(θx+(1−θ)y)≤θf(x)+(1−θ)f(y) 其中0≤θ≤1。凸函式的一維導

優化學習筆記(3)——優化問題

筆記是根據《Convex Optimization》寫的,序號對應章。 4 凸優化問題 4.1 優化問題的基本形式 minimizef0(x)subjecttofi(x)≤0,i=1,…,mhi(x)=0,i=1,…,p   需要注意的是除了顯式的約束外

【HNOI2008】玩具裝箱TOY & 斜率優化學習筆記

ali ora 但是 times 解析 begin 常數 自己 學習筆記 題目 P教授要去看奧運,但是他舍不下他的玩具,於是他決定把所有的玩具運到北京。他使用自己的壓縮器進行壓縮,其可以將任意物品變成一堆,再放到一種特殊的一維容器中。P教授有編號為 \(1\cdots N?

移動端arm cpu優化學習筆記----一步步優化盒子濾波(Box Filter)

            最近一段時間做比較多移動端開發相關的工作,感覺

筆記篇】單調隊列優化dp學習筆記&&luogu2569_bzoj1855股票交♂易

打表 交易 賣出 .... while 變量 計算 原則 spa DP頌 DP之神 聖潔美麗 算法光芒照大地 我們懷著 崇高敬意 跪倒在DP神殿裏 你的復雜 能讓蒟蒻 試圖入門卻放棄 在你光輝 照耀下面 AC真心不容易 dp大概是最經久不衰 亙古不化的算法了吧. 而且有各

學習筆記第十七節:斜率優化Dp,四邊形不等式證明決策單調

正題       我就以這一題:玩具裝箱裝玩具來引入我們今天的話題。       我們先設f[i]表示前i個玩具裝的最小費用是多少。       那麼,很明顯就有我們列舉一個j,使得j+1到i裝

「一本通」斜率優化dp學習筆記

總結: 如果dp方程寫出來之後大概是長這樣的f[i]=∑0<j<imin(f[j]+s[i,j])+…f[i]=\sum_{0<j<i} min(

dp優化/wps二分學習筆記(洛谷4383 [八省聯考2018]林克卡特樹lct)

qwq 安利一個凸優化講的比較好的部落格 https://www.cnblogs.com/Gloid/p/9433783.html 但是他的暴力部分略微有點問題 qwq 我還是詳細的講一下這個題+這個知識點吧。 還是先從題目入手。 首先我們分析題目。 因為題目要刪除

斜率優化DP學習筆記

最近瞎搞了搞斜率優化... 斜率優化DP是一種優化DP的思想,通過高中數學線性規劃那套理論加上凸包那套理論單調的優良性質將O(N^2)的DP列舉轉移優化成O(N)的轉移 先來一道簡單題:[APIO2010]特別行動隊 我們設\(s_i\)是字首和陣列,設\(f_i\)為前\(i\)個巨佬的戰鬥力和最大值

【JAVAEE學習筆記】hibernate04:查詢種類、HQL、Criteria、查詢優化和練習為客戶列表增加查詢條件

沒有 arrays getpara tex response 寫法 sum exceptio 提高 一、查詢種類 1.oid查詢-get 2.對象屬性導航查詢 3.HQL 4.Criteria 5.原生SQL 二、查詢-HQL語法 //學習HQL語法 public