#include<iostream>

#include<algorithm>

using namespace std;

struct SIZE

{

int l;

int w;

}sticks[5005];

int flag[5005];

bool cmp(const SIZE &a,const SIZE &b)//这里是排序!

{//写排序函数的时候要特别的小心!

//if(a.w!=b.w)//这里写错了,这里表示如果重量不等,按照长度排,如果重量相等,则按照重量排!(没意义!)

if(a.l!=b.l)

return a.l>b.l;//长度不等时按照长度排,从大到小排

else

return a.w>b.w;//长度相等时,再按照重量从大到小排列

}

int main()

{

int n,min,cases;

int i,j,s;

cin>>cases;

for(j=0;j<cases;j++)

{

cin>>n;

for(i=0;i<n;i++)

{

cin>>sticks[i].l>>sticks[i].w;

flag[i]=0;

}

sort(sticks,sticks+n,cmp);

s=0;

for(i=0;i<n;i++)

{

if(flag[i]) continue;

min=sticks[i].w;

for(int j=i+1;j<n;j++)

{

if(min>=sticks[j].w && !flag[j])

{

min=sticks[j].w;

flag[j]=1;

}

}

s++;

}

cout<<s<<endl;

}

//system("pause");

return 0;

}

  1. #include<iostream>
  2. #include<algorithm>
  3. using namespace std;
  4. struct SIZE
  5. {
  6. int l;
  7. int w;
  8. }sticks[5005];
  9. int flag[5005];
  10. bool cmp(const SIZE &a,const SIZE &b)//这里是排序!
  11. {//写排序函数的时候要特别的小心!
  12. //if(a.w!=b.w)//这里写错了,这里表示如果重量不等,按照长度排,如果重量相等,则按照重量排!(没意义!)
  13. if(a.l!=b.l)
  14. return a.l>b.l;//长度不等时按照长度排,从大到小排
  15. else
  16. return a.w>b.w;//长度相等时,再按照重量从大到小排列
  17. }
  18. int main()
  19. {
  20. int n,min,cases;
  21. int i,j,s;
  22. cin>>cases;
  23. for(j=0;j<cases;j++)
  24. {
  25. cin>>n;
  26. for(i=0;i<n;i++)
  27. {
  28. cin>>sticks[i].l>>sticks[i].w;
  29. flag[i]=0;
  30. }
  31. sort(sticks,sticks+n,cmp);
  32. s=0;
  33. for(i=0;i<n;i++)
  34. {
  35. if(flag[i]) continue;
  36. min=sticks[i].w;
  37. for(int j=i+1;j<n;j++)
  38. {
  39. if(min>=sticks[j].w && !flag[j])
  40. {
  41. min=sticks[j].w;
  42. flag[j]=1;
  43. }
  44. }
  45. s++;
  46. }
  47. cout<<s<<endl;
  48. }
  49. //system("pause");
  50. return 0;
  51. }

hdu1051的更多相关文章

  1. hdu1051(LIS | Dilworth定理)

    这题根据的Dilworth定理,链的最小个数=反链的最大长度 , 然后就是排序LIS了 链-反链-Dilworth定理 hdu1051 #include <iostream> #inclu ...

  2. HDU1051 贪心

    Wooden Sticks Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Tot ...

  3. hdu1051 Wooden Sticks

    题目:http://acm.hdu.edu.cn/showproblem.php?pid=1051 大意:求最少升序序列的个数. #include <cstdio> #include &l ...

  4. HDU1051 Wooden Sticks 【贪婪】

    Wooden Sticks Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) To ...

  5. HDU1051:Wooden Sticks

    Problem Description There is a pile of n wooden sticks. The length and weight of each stick are know ...

  6. hdu1051 Wooden Sticks---贪心

    题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=1051 题目大意:给你n根木棍的长度和重量.根据要求求出制作该木棍的最短时间.建立第一个木棍需要1分钟 ...

  7. Hdu1051 Wooden Sticks 2017-03-11 23:30 62人阅读 评论(0) 收藏

    Wooden Sticks Problem Description There is a pile of n wooden sticks. The length and weight of each ...

  8. hdu1051 Wooden Sticks(贪心+排序,逻辑)

    Wooden Sticks Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Tot ...

  9. Wooden Sticks(hdu1051)

    Wooden Sticks Time Limit:1000MS     Memory Limit:32768KB     64bit IO Format:%I64d & %I64u Submi ...

随机推荐

  1. <再看TCP/IP第一卷>TCP/IP协议族中的最压轴戏----TCP协议及细节

    题外话:刚刚过去的半个月实在是忙得我喘不过来气,虽然手里还压着几个项目得在期末考试之前做完,但是想想还是更新一下随笔,稍微换个心情.另外小吐槽一下那些在博客园里原封不动抄书当随笔的人,唉真是....算 ...

  2. <Perl算法小菜>排序加速--Schwatzian变换及Guttman-Rosler变换

    原创博客,转载请联系博主! perl里的数据都是以双精度为单元存储的,也就是相当于C/Cpp中的double型,而正则的解析是由perl内置的正则引擎完成的,那么除了重写一个属于自己的排序方法之外,我 ...

  3. linux新增用户和删除用户

    新增用户 新增用户命令:useradd 参数: 参数 说明 -u 指定UID,也就是自定义UID -g 知道GID,也就是初始化用户组,/etc/passwd文件中的第四个字段. -G 后面接用户组的 ...

  4. LXC linux容器简介——在操作系统层次上为进程提供的虚拟的执行环境,限制其使用的CPU和mem等资源,底层是linux内核资源管理的cgroups子系统

    1.LXC是什么? LXC是Linux containers的简称,是一种基于容器的操作系统层级的虚拟化技术. 2.LXC可以做什么? LXC可以在操作系统层次上为进程提供的虚拟的执行环境,一个虚拟的 ...

  5. Winform开发入门集中培训系列文章

    最近有个培训,写PPT不如写博客了,共享是程序猿的职业情操吧,因此,本人准备写一个Winform开发的系列文章,对于初级开发者来说,应该比较有用,写作当中不免错误或不成熟的地方,看到的朋友请留言指出, ...

  6. django models class 不识别问题解决方案

    目录 1. 事情起因 2. 排查经过 3. 总结 1. 事情起因 今天在写代码的时候,在django 的models目录中新增了一个pkg.py文件,里面定义了一个class, 在执行 makemig ...

  7. Java中Calendar常用方法总结

    //获取当前时刻yyyy-MM-dd HH:mm:ss Calendar calendar = Calendar.getInstance(); SimpleDateFormat sdf = new S ...

  8. JAVA 1.5 并发之 ReentrantLock

    在文章里我不打算具体讲Lock的实现,对此有兴趣的请点击这篇博文 http://www.blogjava.net/BucketLi/archive/2010/09/30/333471.html 我是一 ...

  9. 第三课 go语言基础语法

    http://www.runoob.com/go/go-basic-syntax.html 1 行分隔符 在 Go 程序中,一行代表一个语句结束.每个语句不需要像 C 家族中的其它语言一样以分号 ; ...

  10. 编译内核是出现:arch/arm/mm/tlb-v4wbi.S:64:error: too many positional arguments

    内核:Linux-3.4.2 编译内核出现arch/arm/mm/tlb-v4wbi.S:64:error: too many positional arguments 交叉工具链太老了,换新一点的. ...