hd1505 dp優化 最大01矩陣

2022-05-08 08:54:26 字數 767 閱讀 6365

這題的話,求最大01矩陣,我們找每行的某一點,先初始化這點的高,再向兩邊延伸l[i],r[i],遍歷所有節點就可以求出所有的面積

l[i]的求法可以用dp,一開始只看懂了用底*高的求法,一直在想dp在**...很好的題呀

狀態轉移方程

l[i] = l[l[i]-1] (a[k][i]<=a[k][l[i]-1])

先求出每行某一點的高度,剩下的問題和1506一模一樣了

#include #include 

#include

#include

#include

#include

#include

using

namespace

std;

const

int inf = (1

<<31)-1

;const

int maxn = 1e3+10

;int

dp[maxn][maxn];

intl[maxn];

intr[maxn];

intmain()

}int ans,mmax = -inf;

for(int i=1;i<=n;i++)

for(int j=m;j>=1;j--)

for(int j=1;j<=m;j++)

}cout

}//cout << "hello world!" << endl;

return0;

}

view code

dp入門 1 HD2084 數塔

記錄acm入門 dp入門第一天,hd2084解題報告思路 hd2084 有如下所示的數塔,要求從頂層走到底層,若每一步只能走到相鄰的結點,則經過的結點的數字之和最大是多少?輸入資料首先包括乙個整數c,表示測試例項的個數,每個測試例項的第一行是乙個整數n 1 n 100 表示數塔的高度,接下來用n行數...

NOIP2017模擬賽 龍珠(dp 單調佇列優化)

你得到了乙個龍珠雷達,它會告訴你龍珠出現的時間和地點。龍珠雷達的畫面是一條水平的數軸,每乙個視窗時間,數軸的某些點上會出現同一種龍珠,每當你獲得其中一顆龍珠,其它龍珠就會消失。下乙個視窗時間,數軸上又會出現另一種龍珠。總共有n個視窗時間,也就是總共有n種龍珠。假設你會瞬間移動,你從數軸的x點移動到y...

bzoj3156防禦準備 DP之單調佇列優化

第一行為乙個整數n表示戰線的總長度。第二行n個整數,第i個整數表示在位置i放置守衛塔的花費ai。output 共乙個整數,表示最小的戰線花費值。sample input 102 3 1 5 4 5 6 3 1 2 sample output 這道題是dp,這是毋庸置疑的。我們先考慮暴力dp,我們顯然...