題意:找元素關於 left-down to right-up 對稱的最大矩陣
分析:有兩條對角線,我們可以轉化為常用的那條對角線來求,就像在一張紙上寫上東西,把紙反過來從背面看的效果是一樣的。每個點向兩邊擴充套件,如果能擴充套件完,num【x】【y】=num【x-1】【y-1】+1;不能的話,中途停止了,就等於當前所能擴充套件的行數。
//只要打出num矩陣,然後結合**,就很好理解動態規劃的過程了
code:
#include
#include
#include
#include
#include
#include
#include
#include
#include
using
namespace
std;
int n,m,k;
int mmax;
int a[111111];
char tu[1130][1120];
int num[1120][1120];
void dp1(int x,int y)
if(i>v)num[x][y] = num[x-1][y-1]+1;
else num[x][y] = i;
if(mmaxint main()
mmax = 0;
for(int i=1;i<=n;i++)
}// for(int i=1;i<=n;i++)
//
// printf("\n");
// }
cout
0;}
hdu 1520 樹形DP基礎
父節點和子節點不能同時選。首先是建樹,這個在之前的樹形揹包裡有講 因為這裡沒有指定根節點,所以可以建雙向邊,這樣就可以從任乙個點出發遍歷 接下來是dp,狀態轉移方程 dp fa 0 max dp son 0 dp son 1 dp fa 1 dp son 0 include include incl...
ES6最基礎的東西
首先,以下es6的新東西基本都有相容性問題 1.可以用let來宣告變數,它與var的區別。1.let不會進行變數提公升。2.變數不允許重複定義 3.變數不允許被刪除。4.在for迴圈中,可以保留迴圈變數的值,迴圈變數只能在當前作用域中使用 凡是被都是塊級作用域,除物件以外 2.用const宣告變數 ...
HDU 3555 Bomb 基礎數字dp
題意大致就是說給你乙個數n,要你求0 n之間含有49的數的個數 理解題意很簡單下面就直接貼 了 include include include includeusing namespace std int64 dp 21 4 int a 1000 void init int main int g 0...