nyoj16矩形巢狀

2021-08-11 04:41:08 字數 866 閱讀 3792

時間限制: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

注意:矩陣巢狀矩陣的長和寬都必須小於另乙個矩陣的長和:寬。

思路:典型的dag模型

首先對矩陣排序,然後寫出狀態轉移公式:dp[i]=max(dp[i],dp[j]+1)

dp[i]表示第i個矩陣巢狀矩陣的最大值

根據dp思想,先求出dp[1],在求出dp[2]......dp[n-1]

ac**:

#include #include #include #include using namespace std;

const int n=1016;

struct nodea[n];

int cmp(node c,node d)

sort(a,a+n,cmp);

memset(dp,0,sizeof(dp));

for(int i=1;ia[j].x&&a[i].y>a[j].y)

dp[i]=max(dp[i],dp[j]+1);

int maxx=0;

for(int i=0;i

nyoj 16 矩形巢狀

時間限制 3000 ms 記憶體限制 65535 kb 難度 4 描述有n個矩形,每個矩形可以用a,b來描述,表示長和寬。矩形x a,b 可以巢狀在矩形y c,d 中當且僅當ab套在 6,2 內,但不能巢狀在 3,4 中。你的任務是選出盡可 能多的矩形排成一行,使得除最後乙個外,每乙個矩形都可以巢狀...

NYOJ 16 矩形巢狀

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

NYOJ16 矩形巢狀

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