Description

  NBA每年都有球员选秀环节。通常用速度和身高两项数据来衡量一个篮球运动员的基本素质。假如一支球队里
速度最慢的球员速度为minV,身高最矮的球员高度为minH,那么这支球队的所有队员都应该满足: A * ( height
– minH ) + B * ( speed – minV ) <= C 其中A和B,C为给定的经验值。这个式子很容易理解,如果一个球队的
球员速度和身高差距太大,会造成配合的不协调。 请问作为球队管理层的你,在N名选秀球员中,最多能有多少名
符合条件的候选球员。
Input

  第一行四个数N、A、B、C 下接N行每行两个数描述一个球员的height和speed
Output

  最多候选球员数目。
Sample Input
4 1 2 10

5 1

3 2

2 3

2 1
Sample Output
4

#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
typedef long long LL;
struct node
{LL x,y,sum;
}a[5100],b[5100];
LL A,B,C;
bool cmp1(node xx,node yy){return xx.x<yy.x;}
bool cmp2(node xx,node yy){return xx.sum<yy.sum;}
int _max(LL x,LL y){return x>y?x:y;}
int main()
{int n;scanf("%d%lld%lld%lld",&n,&A,&B,&C);for(int i=1;i<=n;i++){scanf("%lld%lld",&a[i].x,&a[i].y);a[i].sum=A*a[i].x+B*a[i].y;b[i]=a[i];}sort(a+1,a+n+1,cmp1);sort(b+1,b+n+1,cmp2);int ans=0;for(int i=1;i<=n;i++){LL low2=a[i].y,high=low2+C/B;//high是最高身高。//如果我们只看B*(speed-minV)<=C,可以得知://speed-minV<=C/B//speed<=C/B+minV,所以最大值是C/B+minV。LL l=0,r=0;int sum=0;for(int j=1;j<=n;j++){LL low1=a[j].x;while(r<n&&b[r+1].sum<=A*low1+B*low2+C)//如果满足条件{r++;if(b[r].y<=high&&b[r].y>=low2)sum++;//在规定身高内,则累加。}while(l<n&&a[l+1].x<low1)//如果比最小体重还要小。{l++;if(a[l].y<=high&&a[l].y>=low2)sum--;//在规定身高内,但体重又不符合条件,但之前肯定累加过,//所以要取消它之前的影响。}ans=_max(ans,sum);}}printf("%d\n",ans);return 0;
}

[SCOI2007]组队相关推荐

  1. 1071: [SCOI2007]组队

    1071: [SCOI2007]组队 Time Limit: 3 Sec   Memory Limit: 128 MB Submit: 1763   Solved: 546 [ Submit][ St ...

  2. P4165 [SCOI2007]组队 推柿子+差分

    题意: 题意 分析: 推柿子 : A × h − A × m i n h + B × s − B × m i n s ≤ C A\times h-A\times min_h+B\times s-B\t ...

  3. [BZOJ]1071: [SCOI2007]组队 STL优先队列

    Description NBA每年都有球员选秀环节.通常用速度和身高两项数据来衡量一个篮球运动员的基本素质.假如一支球队里 速度最慢的球员速度为minV,身高最矮的球员高度为minH,那么这支球队的所 ...

  4. (双指针) bzoj 1071

    1071: [SCOI2007]组队 Time Limit: 1 Sec  Memory Limit: 162 MB Submit: 1267  Solved: 392 [Submit][Status ...

  5. 2019.4.summary

    2019.4.1 BZOJ1061: [Noi2008]志愿者招募 真心有点难QAQ https://www.byvoid.com/zhs/blog/noi-2008-employee 看void爷的 ...

  6. BZOJ第一页刷题计划

    BZOJ第一页刷题计划 已完成:67 / 90 [BZOJ1000]A+B Problem:A+B: [BZOJ1001][BeiJing2006]狼抓兔子:最小割: [BZOJ1002][FJOI2 ...

  7. 退役前的做题记录2.0

    退役前的做题记录2.0 最近在刷省选题......大致上是按照省份刷的. 不过上面的题目顺序是按照写题的顺序排列的,所以可能会有点乱哈. [BZOJ2823][AHOI2012]信号塔 最小圆覆盖,随 ...

  8. [BZOJ]1071 组队(SCOI2007)

    一道比较NB的套路题. Description NBA每年都有球员选秀环节.通常用速度和身高两项数据来衡量一个篮球运动员的基本素质.假如一支球队里速度最慢的球员速度为minV,身高最矮的球员高度为mi ...

  9. 【SCOI2007】【BZOJ1071】组队

    原题链接:原题地址 Description NBA每年都有球员选秀环节.通常用速度和身高两项数据来衡量一个篮球运动员的基本素质.假如一支球队里速度最慢的球员速度为minV,身高最矮的球员高度为minH ...

最新文章

  1. 清除图片下默认的小间隙_密封间隙对迷宫密封性能影响的三维数值分析
  2. LINUX系统以及ANDROID 平台log信息输出级别设置 [MTK]
  3. ssm idea后端接收数据输出在控制台时出现中文乱码
  4. gradle下载的依赖包位置
  5. 2018.10.26多校
  6. keil5 mdk安装教程
  7. switchHosts 介绍
  8. Ruby中的concat()方法
  9. 光纤传输网的发展及其新的分层结构
  10. 计算机辅助英语听说考试系统,英语听说考试
  11. html插入外链音乐,GitHub Page插入网易云音乐外链
  12. Origin绘图后导出图片的方法
  13. 简单NLP分析套路(2)----分词,词频,命名实体识别与关键词抽取
  14. 2019机器学习框架之争:与Tensorflow竞争白热化,进击的PyTorch赢在哪里?
  15. 软件变异体测试(mutation test)
  16. Spring解析加密配置文件
  17. SCI期刊Cover Letter写法模板
  18. 小米笔记本android,7代小米笔记本安装凤凰系统(Phoenix OS)显示命令行ANDROID字样
  19. 钉钉自定义机器人无法指定正向代理问题解决
  20. 做人做事需牢记20条原则

热门文章

  1. 论坛报名 | 负责任的人工智能:可持续发展与治理的协同
  2. PdfFactory.v4.64.Pro Server 和 FinePrint-v7.04-Pro Server + keygen
  3. Java秒杀系统实战系列~定时任务补充处理超时未支付的订单
  4. SecureCRT 命令
  5. 平安金融壹账通登顶中文机器阅读理解CMRC竞赛榜单
  6. 传奇霸业服务器没响应,腾讯传奇霸业怎么玩不了 腾讯传奇霸业进不去解决方法...
  7. JAVA 攻城狮 第十六天
  8. ManGe Commander 文档 v0.2
  9. sublime text 一些常用插件
  10. 尚硅谷MySQL高级学习笔记 -- 1.MySQL 的架构介绍