矩形嵌套

时间限制:3000 ms  |  内存限制:65535 KB
难度:4
描述
有n个矩形,每个矩形可以用a,b来描述,表示长和宽。矩形X(a,b)可以嵌套在矩形Y(c,d)中当且仅当a<c,b<d或者b<c,a<d(相当于旋转X90度)。例如(1,5)可以嵌套在(6,2)内,但不能嵌套在(3,4)中。你的任务是选出尽可能多的矩形排成一行,使得除最后一个外,每一个矩形都可以嵌套在下一个矩形内。
输入
第一行是一个正正数N(0<N<10),表示测试数据组数,
每组测试数据的第一行是一个正正数n,表示该组测试数据中含有矩形的个数(n<=1000)
随后的n行,每行有两个数a,b(0<a,b<100),表示矩形的长和宽

输出
每组测试数据都输出一个数,表示最多符合条件的矩形数目,每组输出占一行
样例输入
1
10
1 2
2 4
5 8
6 10
7 9
3 1
5 8
12 10
9 7
2 2
样例输出
5
解法一:按照面积大小和面积相同的按照长度进行排序
 #include<stdio.h>
#include<string.h>
int main()
{
int t,l1,l2,l3,sum,n;
int i,j,m;
int a[],b[],c[],d[];
scanf("%d",&t);
while(t--)
{sum=;memset(d,,sizeof(d));
scanf("%d",&n);
for(i=;i<n;i++)
{
scanf("%d %d",&a[i],&b[i]);
if(a[i]>b[i])
{m=a[i];a[i]=b[i];b[i]=m;}
c[i]=a[i]*b[i];
}
for(j=;j<n-;j++)
for(i=;i<n--j;i++)
{
if(c[i]>c[i+])//按照面积先进行排序
{
int x=c[i];c[i]=c[i+];c[i+]=x;
int y=a[i];a[i]=a[i+];a[i+]=y;
int z=b[i];b[i]=b[i+];b[i+]=z;
}
if(c[i]==c[i+])
{
if(b[i]>b[i+])如果面积相同的,按照长进行排序
{
int x=c[i];c[i]=c[i+];c[i+]=x;
int y=a[i];a[i]=a[i+];a[i+]=y;
int z=b[i];b[i]=b[i+];b[i+]=z;
}
}
}
// for(i=0;i<n;i++)
// printf("%d %d %d\n",a[i],b[i],c[i]);//
for(i=;i<n;i++)
{sum=;
for(j=;j<i;j++) if(c[j]>c[j-])
{
if((a[i]>a[j] && b[i]>b[j]) && d[j]+>d[i])
{
d[i]=d[i]+;//贪心法,的累加
}
}
if(d[i]>sum)
sum=d[i];
}
printf("%d\n",sum+);
}
return ;
}
解法二:直接按照长进行排序
 #include"stdio.h"
#define M 1024
main(){
int m,n,t,i,j,x;
float
a[M],b[M];
scanf("%d",&m);
for(x=;x<m;x++){
int
c[M]={};
scanf("%d",&n);
for(i=;i<=n-;i++){
scanf("%f
%f",&a[i],&b[i]);
if(a[i]<b[i]){
t=b[i];
b[i]=a[i];
a[i]=t;}
}
for(i=;i<n-;i++){
for(j=;j<n-i-;j++)
if(a[j]>a[j+]){
t=a[j];
a[j]=a[j+];
a[j+]=t;
t=b[j];
b[j]=b[j+];
b[j+]=t;
}}
for(i=;i<n-;i++)
for(j=i+;j<n;j++)
{
if(b[j]>b[i]&&a[i]<a[j]){
if(c[j]<(c[i]+))
c[j]=c[i]+;
}
}
for(i=;i<n-;i++)
if(c[i]>c[i+])
c[i+]=c[i];
c[i]++;
if(n<=)c[i]=;
printf("%d\n",c[i]);
}}

ny16 矩形嵌套的更多相关文章

  1. NYOJ16 矩形嵌套(DAG最长路)

    矩形嵌套 紫书P262 这是有向无环图DAG(Directed Acyclic Graph)上的动态规划,是DAG最长路问题 [题目链接]NYOJ16-矩形嵌套 [题目类型]DAG上的dp & ...

  2. nyoj 16 矩形嵌套

    矩形嵌套 时间限制:3000 ms  |  内存限制:65535 KB 难度:4   描述 有n个矩形,每个矩形可以用a,b来描述,表示长和宽.矩形X(a,b)可以嵌套在矩形Y(c,d)中当且仅当a& ...

  3. NYOJ 16 矩形嵌套(动态规划)

    矩形嵌套 时间限制: 3000 ms  |  内存限制: 65535 KB 难度: 4   描述 有n个矩形,每个矩形可以用a,b来描述,表示长和宽.矩形X(a,b)可以嵌套在矩形Y(c,d)中当且仅 ...

  4. 矩形嵌套(LIS)

    矩形嵌套 时间限制:3000 ms  |  内存限制:65535 KB 难度:4   描述 有n个矩形,每个矩形可以用a,b来描述,表示长和宽.矩形X(a,b)可以嵌套在矩形Y(c,d)中当且仅当a& ...

  5. NYOJ - 矩形嵌套(经典dp)

    矩形嵌套时间限制:3000 ms | 内存限制:65535 KB 描述 有n个矩形,每个矩形可以用a,b来描述,表示长和宽.矩形X(a,b)可以嵌套在矩形Y(c,d)中当且仅当a<c,b< ...

  6. 矩形嵌套(dp)

    矩形嵌套 时间限制:3000 ms  |  内存限制:65535 KB 难度:4   描述 有n个矩形,每个矩形可以用a,b来描述,表示长和宽.矩形X(a,b)可以嵌套在矩形Y(c,d)中当且仅当a& ...

  7. NYOJ 16 矩形嵌套(经典DP)

    http://acm.nyist.net/JudgeOnline/problem.php?pid=16 矩形嵌套 时间限制:3000 ms  |           内存限制:65535 KB 难度: ...

  8. 【动态规划】矩形嵌套 (DGA上的动态规划)

    [动态规划]矩形嵌套 时间限制: 1 Sec  内存限制: 128 MB提交: 23  解决: 9[提交][状态][讨论版] 题目描述 有n个矩形,每个矩形可以用a,b来描述,表示长和宽.矩形X(a, ...

  9. nyoj 题目16 矩形嵌套

    矩形嵌套 时间限制:3000 ms  |  内存限制:65535 KB 难度:4   描述 有n个矩形,每个矩形可以用a,b来描述,表示长和宽.矩形X(a,b)可以嵌套在矩形Y(c,d)中当且仅当a& ...

随机推荐

  1. MySQL中int(5) 中的5代表什么意思?

    对于INT型,MySQL支持指定显示宽度例如:int(5):表示如果数值宽度小于5位,则填满宽度,保证总宽度为5位.默认为int(11),配合zerofill可以看到效果. DROP TABLE IF ...

  2. 1z0-052 q209_10

    10: A user, who is authenticated externally, logs in to a remote machine and connects to the databas ...

  3. CSS3 calc()函数使用

    1.calc是什么? calc是英文单词calculate(计算)的缩写,用于动态计算长度值. calc()函数支持 "+", "-", "*&quo ...

  4. win7,8,10取得|取消管理员权限

    取得: Windows Registry Editor Version 5.00[HKEY_CLASSES_ROOT\*\shell\runas]@=”管理员取得所有权”“NoWorkingDirec ...

  5. 在OpenERP8.0中如何激活及时通讯功能im

    How to activate chat (im) in v8 (trunk) I know its already answered that chat (im) is only available ...

  6. 用Java实现AES加密(坑!)

    大坑!使用SecureRandom默认的加密方式即SHA1PRNG生成的密码有误,即使使用相同的password来生成,不同runtime或时刻生成的随机密码也有可能不同,造成的错误为javax.cr ...

  7. java 泛型 精析

      Created by Marydon on 1.概述 泛型是Java SE 1.5的新特性,泛型的本质是参数化类型,也就是说所操作的数据类型被指定为一个参数: 这种参数类型可以用在类.接口和方法的 ...

  8. PowerDesigner 的常用方法

    http://www.cnblogs.com/studyzy/archive/2008/01/23/1050194.html PowerDesigner 的常用方法 修改外键命名规则 选择Databa ...

  9. php数据库操作类(转)

    <?php Class DB {       private $link_id;     private $handle;     private $is_log;     private $t ...

  10. Hadoop docs

    原文地址:http://hadoop.apache.org/docs/ Index of /docs Name Last modified Size Description Parent Direct ...