NYOJ 16 矩形巢狀(動態規劃)

2021-09-06 11:16:53 字數 1007 閱讀 9344

時間限制:

3000 ms  |  記憶體限制:

65535 kb

難度:

4 描述

有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

樣例輸出

5

第一種方法:

#include#include#include#include#define n 1005

using namespace std;

vectorvec[n];

int dp[n];

struct rec

a[n];

int nest(rec a1,rec a2) /*判斷兩個矩形是否可以巢狀*/

int dfs(int x,int n)

if(!flag)

return dp[x]=1;

return dp[x]=maxv;

}int main()

printf("%d\n",maxv);

} return 0;

}

第二種方法:

#include#includeusing namespace std;

#define n 1005

struct rec

a[n];

int dp[n];

bool comp(rec a1,rec a2) /*按長從小到大排序*/

{ if(a1.l==a2.l)

return a1.w

NYOJ 16 矩形巢狀(動態規劃)

矩形巢狀 時間限制 3000 ms 記憶體限制 65535 kb 難度 4 描述 有n個矩形,每個矩形可以用a,b來描述,表示長和寬。矩形x a,b 可以巢狀在矩形y c,d 中當且僅當a參考最長上公升子串行長度 狀態轉移方程dp i max dp i dp j 1 include include ...

NYOJ 16 矩形巢狀(動態規劃)

矩形巢狀 時間限制 3000 ms 記憶體限制 65535 kb 難度 4 描述有n個矩形,每個矩形可以用a,b來描述,表示長和寬。矩形x a,b 可以巢狀在矩形y c,d 中當且僅當a 輸入第一行是乙個正正數n 0 每組測試資料的第一行是乙個正正數n,表示該組測試資料中含有矩形的個數 n 1000...

nyoj 16 矩形巢狀 動態規劃

時間限制 3000 ms 記憶體限制 65535 kb 難度 4 描述有n個矩形,每個矩形可以用a,b來描述,表示長和寬。矩形x a,b 可以巢狀在矩形y c,d 中當且僅當a 輸入第一行是乙個正正數n 0輸出 每組測試資料都輸出乙個數,表示最多符合條件的矩形數目,每組輸出佔一行 樣例輸入 1 10...