题面传送门
我们可以尝试贪心。
这个问题满足二分性质,即如果iii天能买到,i+1i+1i+1天一定能买到,所以我们可以二分。
预处理一个maxnaimaxna_imaxnai​表示美元在前iii天的最低汇率。英镑同样。
把美元和英镑买的玩具分开,分别排序。
在验证是用双指针就可以做到O(m)O(m)O(m)验证。
时间复杂度O(mlog2n)O(mlog^2n)O(mlog2n)
代码实现:

#include<cstdio>
#include<algorithm>
//#include<cmath>
#define min(a,b) ((a)<(b)?(a):(b))
using namespace std;
int n,m,k,l,r,mid,head1,head2;
long long c[100039],d[100039],x,y,mina[100039],minb[100039],s;
inline int check(int x){register int i,l=1,r=1;long long ans=0;for(i=1;i<=k;i++) {if((c[l]*mina[x]<=d[r]*minb[x]&&l<=head1)||r>head2) ans+=c[l]*mina[x],l++;else ans+=d[r]*minb[x],r++;if(ans>s) return 0;}return 1;
}
int main(){mina[0]=minb[0]=1e9;register int i;scanf("%d%d%d%lld",&n,&m,&k,&s);for(i=1;i<=n;i++) scanf("%lld",&x),mina[i]=min(mina[i-1],x);for(i=1;i<=n;i++) scanf("%lld",&x),minb[i]=min(minb[i-1],x);for(i=1;i<=m;i++){scanf("%lld%lld",&x,&y);if(x==1) c[++head1]=y;else d[++head2]=y;}sort(c+1,c+head1+1);sort(d+1,d+head2+1);l=0;r=n+1;while(l+1<r){mid=(l+r)>>1;if(check(mid)) r=mid;else l=mid;}if(r==n+1) printf("-1");else printf("%d\n",r);
}

qzezoj 1590 买玩具相关推荐

  1. 幼儿园买玩具_二进制枚举

    . 幼儿园买玩具 蒜厂幼儿园有 nn 个小朋友,每个小朋友都有自己想玩的玩具.身为幼儿园园长的你决定给幼儿园买一批玩具,由于经费有限,你只能买 mm 个玩具.已知玩具商店一共卖 kk 种玩具,编号为 ...

  2. 幼儿园买玩具(暴力破解)

    蒜厂幼儿园有 nnn 个小朋友,每个小朋友都有自己想玩的玩具.身为幼儿园园长的你决定给幼儿园买一批玩具,由于经费有限,你只能买 mmm 个玩具.已知玩具商店一共卖 kkk 种玩具,编号为 1,2,3, ...

  3. 1、第一课---小玉买玩具

    小玉买玩具 (时间限制:1000ms 内存限制:65536KB) 描述 班主任给小玉一个任务,到文具店里买尽量多的签字笔.已知一只签字笔的价格是1元9角,而班主任给小玉的钱是a元b角,小玉想知道,她最 ...

  4. 【暴力枚举】二进制枚举-幼儿园买玩具

    [暴力枚举]二进制枚举-幼儿园买玩具 #include<iostream> #include<cstring> using namespace std; int main(){ ...

  5. 卓训教育:儿童哭闹买玩具,家长该怎么办?

    孩子因为自制力弱,经常会有各种各样的行为. 当孩子表现出不好的行为时,你怎么办?下面,卓训教育给大家看一个特别熟悉的场景,看看在这种场景下,你会选择如何来做? 你带着小孩子去商场,孩子看中了一个玩具, ...

  6. 为什么说php是个玩具,买玩具的目的是什么

    在儿童柜台前,父母几乎都有一个愿望:给孩子买对开发智力有益的玩具.这反映出父母们盼孩子成才的迫切心情,智力因素固然重要,但是,个性品质的培养也许更重要. 美国著名心理学家特曼对1528名智商为151的 ...

  7. ACM入门题:幼儿园买玩具-Go语言

    问题描述: 蒜厂幼儿园有n 个小朋友,每个小朋友都有自己想玩的玩具.身为幼儿园园长的你决定给幼儿园买一批玩具,由于经费有限,你只能买m 个玩具.已知玩具商店一共卖k 种玩具,编号为1,2,3,-k,你 ...

  8. 计蒜客-19 幼儿园买玩具

    蒜厂幼儿园有 nnn 个小朋友,每个小朋友都有自己想玩的玩具. 身为幼儿园园长的你决定给幼儿园买一批玩具,由于经费有限,你只能买 mmm 个玩具. 已知玩具商店一共卖 kkk 种玩具,编号为 1,2, ...

  9. C++题解:幼儿园买玩具

    目录 题目 题解 懂了的话就点个赞哦~没懂就看到懂为止呗~ 题目 蒜厂幼儿园有 n 个小朋友,每个小朋友都有自己想玩的玩具.身为幼儿园园长的你决定给幼儿园买一批玩具,由于经费有限,你只能买 m 个玩具 ...

最新文章

  1. 华人小哥用苹果音箱「隔空」测心律,论文登上Nature子刊
  2. Linux下时间戳的换算方法
  3. [JAVA基础类库] Objec类
  4. 爬虫404如何跳过_网站改版之后的一次思考:网站改版会让网站受伤?我们如何让他不降反升...
  5. SQL Server 2008 数据库同步的两种方式 (发布、订阅)
  6. python类定义中、对象字符串的特殊方法是_python中自定义类对象json字符串化的方法_python json转字符串、...
  7. 浅谈数组常见遍历方法
  8. css中改变边距会影响原大小,CSS:更改父容器中子项的边距会改变子项的宽度吗?...
  9. javascript最新版本_JavaScript 引擎「V8」发布 8.0 版本,内存占用量大幅下降
  10. 条形码、二维码的区别和组成结构介绍
  11. springboot不返回指定的字段(隐藏字段)
  12. SSM汽车维修中心管理系统
  13. 修改XMAPP中Apache的默认访问的主页
  14. 小学计算机教育计划,人教版小学信息技术教学计划(精选4篇)
  15. 解析MySQL ibd文件
  16. python 输出结果图文混排_Django图文混排
  17. LevOJ P1685飞跃悬崖(着色问题)
  18. oracle查询半小时之内的记录
  19. 气不气!被迫无奈赚了500W,这程序员真的吊炸天...
  20. excel熵值法计算权重_熵值法的Excel基本步骤

热门文章

  1. 最好用的:桌面搜索工具(或:硬盘搜索) 是什么?BBdoc文档搜索工具!
  2. 【CET4四级英语】【单词】英语四级高频词汇(2)
  3. 如何才能够有效长高?避免走弯路
  4. VK2C22A替代16C22,是段码低功耗LCD液晶显示驱动芯片/段码液晶驱动IC,44SEG*4COM/40*4,高抗干扰.稳定性强
  5. 计算机课上玩的打字游戏,上电脑课时偷偷玩的3个游戏,这些都没玩过,别说自己玩过游戏!...
  6. python能参加奥赛吗-【家长必读】孩子学编程能参加哪些高含金量的比赛?
  7. Windows 10开启ISS Web服务
  8. 机器学习算法——决策树4(剪枝处理)
  9. 2019 第四季UWA STAR——在社区偶遇优秀的他
  10. Web前端面试指导(五):掌握面试技巧,让面试变得轻松