首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

ACM题目···求教!该怎么处理

2012-04-04 
ACM题目求教!俄罗斯长条塔Time Limit: 1000 msMemory Limit: 64 MBTotal Submission: 109Submission Accep

ACM题目···求教!
俄罗斯长条塔
Time Limit: 1000 ms Memory Limit: 64 MB
Total Submission: 109 Submission Accepted: 31
Description
还记得俄罗斯方块游戏吗?但是我们这里的游戏只有水平长条。
而且规则有点奇怪:
水平长条从高处下落,遇到下面的长条就会停止。如果此长条没有超出下面长条的范围,就会保留,否则会消失。
例如:[1,5]的长条落在[2,6]的长条上就会消失,[2,5]的长条落在[2,6]的长条就不会消失,注意[2,6]的长条落在[2,6]的长条不会消失。长条在下落过程中不能左右移动,也就是说不能控制长条的水平位置,但是可以控制长条出现的顺序。
现在给你所有的长条,请你合理安排长条出现顺序,使搭的层数最高。
PS:每层只能存在一个长条

Input
有多组测试数据。
每组测试数据第1行,包含一个整数N (0<N<1000)表示有多少线段
接下来N行,每行两个整数a,b (0<a<b<2^30),表示开始结束位置。
当N为0是结束

Output
最大重叠的数

Sample Input
OriginalTransformed
2
1 100
100 200
3
1 1000
500 1000
200 600
0

Sample Output
OriginalTransformed
Case 1:
1
Case 2:
2

Hint
注意每层只能存在一个长条


[解决办法]
最长子序列。 试试DP

热点排行