時間限制: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
view code
1//wa2//
貪心思想wa,反例:<100 ,1> <9 6> <8 3>正確答案是2,若按下面的貪心思想則答案是0
3 #include 4 #include 5 #include 6
using
namespace
std;
7 typedef struct
node
8node;
11 node ch[1005
];12
int cmp(const
void *a,const
void *b)
1321
intmain()
2235
for(i=1;i<=num;i++)
3644 ch[i].length = a,ch[i].width =b;45}
46if(num==1)47
51 qsort(&ch[i],num,sizeof
(node),cmp);
52int cnt = 1;//
不是0
53for(i=1;i<=num;i++)
54if(ch[i].length>=ch[i+1].length&&ch[i].width>=ch[i+1
].width)
55 cnt++;
56 cout
58return0;
59 }
1 #include 2 #include 3 #include 4using
namespace
std;
5 typedef struct
node
6node;
9 node ch[1005
];10
int f[1005
];11
int cmp(const
void *a,const
void *b)
1220
intmain()
2134
for(i=1;i<=num;i++)
3543 ch[i].length = a,ch[i].width =b;
44 f[i] = 1;45
}46if(num==1)47
51 qsort(&ch[1],num,sizeof
(node),cmp);
52int max = 0;53
for(i=2;i<=num;i++)
5463 cout
65return0;
66 }
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...