题意是处理一批木棍,如果当前处理的木棍长度和重量均大于前一根木棍的长度和重量,则处理当前木棍花费为 0,否则花费为 1。

用结构体存储木棍信息,将木棍按照长度从小到大排序,若长度相等则按照重量从小到大排序,在序列中找到比当前所处理的木棍长度和重量均大于且未处理的木棍再进行处理,若没有满足要求的木棍了,则再次从头开始处理未处理过的木棍,直到所有的木棍处理完毕。

代码如下:

 #include <bits/stdc++.h>
using namespace std;
struct stick
{
int l,w,num;
}p[];
bool cmp(stick a,stick b)
{
return a.l!=b.l?a.l<b.l:a.w<b.w;
}
int main()
{
int t,n,ans,sum,el,ew;
scanf("%d",&t);
while(t--)
{
scanf("%d",&n);
for(int i = ; i < n; ++i)
{
scanf("%d%d",&p[i].l,&p[i].w);
p[i].num = ;
}
sort(p,p+n,cmp);
ans = sum = ;
while(sum<n)
{
el = ew = ;
for(int i = ; i < n; ++i)
if(p[i].num&&p[i].l>=el&&p[i].w>=ew)
{
p[i].num = ;
el = p[i].l;
ew = p[i].w;
++sum;
}
++ans;
}
printf("%d\n",ans);
}
return ;
}

HDU 1051(处理木棍 贪心)的更多相关文章

  1. HDU 1051 Wooden Sticks (贪心)

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

  2. HDU - 1051 Wooden Sticks 贪心 动态规划

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

  3. HDU 1051 Wooden Sticks 贪心||DP

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

  4. HDU 1051 Wooden Sticks 贪心题解

    本题一看就知道是最长不减序列了,一想就以为是使用dp攻克了. 只是那是个错误的思路. 我就动了半天没动出来.然后看了看别人是能够使用dp的,只是那个比較难证明其正确性,而其速度也不快.故此并非非常好的 ...

  5. hdu 1051 wooden sticks (贪心+巧妙转化)

    #include <iostream>#include<stdio.h>#include<cmath>#include<algorithm>using ...

  6. HDU 4442 Physical Examination(贪心)

    HDU 4442 Physical Examination(贪心) 题目链接http://acm.split.hdu.edu.cn/showproblem.php?pid=4442 Descripti ...

  7. HDU 1051 Wooden Sticks 造木棍【贪心】

    题目链接>>> 转载于:https://www.cnblogs.com/Action-/archive/2012/07/03/2574800.html  题目大意: 给n根木棍的长度 ...

  8. hdu 1051 - 贪心,水题

    题目链接 一堆小木棍,每个有两个属性值(l,w),对小木棍分组,每一组内的小木棍存在这样一个序列满足s1<=s2<=s3.....<=sn,[s1<=s2当且仅当s1.l< ...

  9. hdu 1051:Wooden Sticks(水题,贪心)

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

随机推荐

  1. 合并两个有序链表的golang实现

    将两个有序链表合并为一个新的有序链表并返回.新链表是通过拼接给定的两个链表的所有节点组成的. 输入:->->, ->-> 输出:->->->->-> ...

  2. jpa 分页

    public Page<Stability> testPager(){ Pageable pageable = new PageRequest(1, 10, Sort.Direction. ...

  3. IIS出现The specified module could not be found的解决方法

       1.打开IIS 信息服务,在左侧找到自己的计算机,点右键,选择属性,在主属性中选编辑,打开“目录安全性”选项卡,单击“匿名访问和验证控制”里的“编辑”按钮,在弹出的对话框中确保只选中了“匿名访问 ...

  4. Autofs自动挂载探讨

    Autofs介绍: mount是用来挂载文件系统的,可以在系统启动的时候挂载也可以在系统启动后挂载.对于本地固定设 备,如硬盘可以使用mount挂载:而光盘.软盘.NFS.SMB等文件系统具有动态性, ...

  5. MySQL之记录相关操作

    一 介绍 MySQL数据操作: DML ======================================================== 在MySQL管理软件中,可以通过SQL语句中的 ...

  6. Oracle 查询表对应的索引

    select col.table_owner "table_owner", idx.table_name "table_name", col.index_own ...

  7. centos搭建ftp服务器

    申请个京东云服务用着.上传文件想搭建个ftp服务.遇到个坑记录一下: 这里就简单的使用yum安装 ftp服务: vsftpd  全称 very secure ftp deamon  (非常安全的ftp ...

  8. [Oracle维护工程师手记]为什么flashback 的时候既需要 flashback log ,又需要 archive log?

    为什么flashback 的时候既需要 flashback log ,又需要 archive log 呢? 如果数据库的活动不是很频繁,可以看到,其flashback log 是比较小的.那么是通过怎 ...

  9. C++ 中 auto 与 decltype 的用法与区别

    最近在恶补 C++ 知识的时候,学习到了一些 C++11 标准的新特性,利用这些新特性,我们能够更快地提高编程效率,从而实现我们的目标,在此特意记下学习过程中所学习到的一些东西,方便日后的回顾和复习. ...

  10. HP 1010、 1020、 1022 、M1005激光打印机内部无卡纸,但机器仍提示卡纸?

    HP 1010.1018.1020.1022.M1005激光打印机,硒鼓原装编号:Q2612A  1800页 ( A4纸,5%覆盖率).是办公桌面小型打印机中主流产品,故障率极小. 现有一台HP 10 ...