C 實現巢狀矩陣

2021-08-21 08:32:57 字數 829 閱讀 4937

有n個矩形,每個矩形可以用a,b來描述,表示長和寬。矩形x(a,b)可以巢狀在矩形y(c,d)中當且僅當a第一行是乙個正正數n(0每組測試資料都輸出乙個數,表示最多符合條件的矩形數目,每組輸出佔一行

1

101 2

2 45 8

6 10

7 93 1

5 812 10

9 72 2

設d(i)表示從節點i出發的最長路長度,則狀態轉移方程為:d(i)=max  其中e為邊集

再利用動態規劃前,我們先把輸入資料的圖建立起來:

#include #include #include using namespace std;

struct rectan

;int a[100][100];

int dp(int i,int d,int n) //記憶化搜尋

for(int i=0;i}}

/*for(int i=0;i

cout<

}*/int d[n]; //d[i]為第表示從節點i出發的最長路徑

memset(d,0,sizeof(d));//初始化為0

矩陣巢狀(DAG)

題目 見紫書 思路都是根據紫書來的,然後重點是學習了一下利用結構體自定義矩陣的方法,這個方法確實比直接兩兩比較是否能夠巢狀優化了很多 大佬的 菜雞的 include include include using namespace std const int maxn 100 5 int depth ...

巢狀矩陣問題

題目描述 有n個矩形,每個矩形可以用兩個整數來描述,表示它的長與寬。矩形x a,b 可以巢狀在矩形 y c,d 中,當且僅當 a c,b d 或者 b c,a d 矩陣可以旋轉90度 你的任務是選出盡可能多的矩陣排成一行,使得每乙個矩形 除最後乙個矩陣 都可以巢狀在後乙個矩形內。注 如果有多解,矩形...

DAG模型 巢狀矩陣

有向無環圖上的動態規劃是學習動態規劃的基礎,很多問題都可以轉化為dag上的最長路 最短路或路徑計數問題。巢狀矩陣 有n個矩陣,每個矩陣可以用兩個整數a,b描述,表示它的長和寬。矩陣x a,b 可以巢狀在矩陣y c,d 中當且僅當a。例如 1,5 可以巢狀在 6,2 內,但不能巢狀在 3,4 內。你的...