cdoj 1334 郭大侠与Rabi-Ribi Label:贪心+数据结构
郭大侠与Rabi-Ribi
Time Limit: 3000/1000MS (Java/Others) Memory Limit: 65535/65535KB (Java/Others)
最近郭大侠迷上了玩Rabi-Ribi这个游戏。
Rabi-Ribi呢,是一个打兔子的动作冒险游戏,萌萌哒的兔子在地上跑来跑去,好萌好萌呀~
这个游戏是这样玩的,郭大侠作为一个主角,拿着一个小锤子,他的目标是敲晕兔子,然后最后把这些敲晕的兔子都带回家。
当然咯,郭大侠想带回的兔子的总价值最高~
但是,兔子实在是太多了,郭大侠的锤子每一秒钟只能敲晕一只兔子,而且每一只兔子只会在地面上逗留a[i]a[i]秒,在a[i]a[i]秒之后,这一只兔子就会跑回自己的小窝里面。
所以郭大侠面临一些抉择,希望你能帮助他。
Input
第一行包含一个整数NN表示有NN个兔子在地上跑来跑去。
第二行NN个用空格分隔的整数a[i]a[i]表示第i只兔子冒出后停留的时间
第三行NN个用空格分隔的整数v[i]v[i]表示第i只兔子的价值。
1≤N≤1000001≤N≤100000
1≤a[i]≤50001≤a[i]≤5000
1≤v[i]≤10001≤v[i]≤1000
Output
输出郭大侠最多能获得的价值是多少
Sample input and output
Sample Input | Sample Output |
---|---|
5 5 3 6 1 4 7 9 2 1 5 |
24 |
3 1 1 1 1 2 3 |
3 |
Hint
死宅真可怕,连可爱的兔子都要敲晕带回家 QAQ
代码
1 #include<iostream> 2 #include<cstring> 3 #include<cstdio> 4 #include<vector> 5 #include<queue> 6 #include<algorithm> 7 using namespace std; 8 9 struct node{ 10 int t,w; 11 }e[100005]; 12 13 struct cmp1{ 14 bool operator ()(node a,node b){ 15 return a.w<b.w;//最大值优先 16 } 17 }; 18 19 bool cmp2(node a,node b){ 20 return a.t>b.t;//最大值优先 21 } 22 23 priority_queue<node,vector<node>,cmp1> q; 24 int n,ans,point; 25 26 int main(){ 27 // freopen("01.in","r",stdin); 28 scanf("%d",&n); 29 for(int i=1;i<=n;i++) scanf("%d",&e[i].t); 30 for(int i=1;i<=n;i++) scanf("%d",&e[i].w); 31 sort(e+1,e+n+1,cmp2); 32 33 34 int i=5000;point=1; 35 while(i>0){ 36 while(e[point].t>=i){ 37 q.push(e[point++]); 38 } 39 if(!q.empty()) ans+=q.top().w,q.pop(); 40 i--; 41 } 42 43 printf("%d\n",ans); 44 return 0; 45 }就是靠优先队列,倒着来有最优结果,在某个时刻不着急砸兔子
先把兔子加到队列里面来,相当于获取砸这一只的机会
当要砸的时候,获取队列里最贵的一只就好
貌似有一道经典题目一样,大意就是开车绕个圈加油,问最少加几次油,也可以看成类似经过加油站获取加油的机会,、油不够的时候,获取最大值
转载于:https://www.cnblogs.com/radiumlrb/p/5906047.html
cdoj 1334 郭大侠与Rabi-Ribi Label:贪心+数据结构相关推荐
- cdoj 1334 郭大侠与Rabi-Ribi 贪心+数据结构
郭大侠与Rabi-Ribi Time Limit: 3000/1000MS (Java/Others) Memory Limit: 65535/65535KB (Java/Others) Su ...
- cdoj 1355 郭大侠与“有何贵干?”
题目传送门 郭大侠与"有何贵干?" 连当个值日生也能酷到迷死人,县立学文高中一年二班.这里,有个一入学就引起瞩目的学生,名叫郭大侠.其举手投足都蕴含着一股酷劲,不对,根本酷过头了. ...
- cdoj 1342 郭大侠与甲铁城 树状数组+离线
郭大侠与甲铁城 Time Limit: 1500/800MS (Java/Others) Memory Limit: 65535/65535KB (Java/Others) Submit St ...
- 【UESTC 1334 郭大侠与Rabi-Ribi】+ 贪心 + 优先队列
郭大侠与Rabi-Ribi Time Limit: 3000/1000MS (Java/Others) Memory Limit: 65535/65535KB (Java/Others) Submit ...
- 【CDOJ 1334】 郭大侠与Rabi-Ribi
http://acm.uestc.edu.cn/#/problem/show/1334 最近郭大侠迷上了玩Rabi-Ribi这个游戏. Rabi-Ribi呢,是一个打兔子的动作冒险游戏,萌萌哒的兔子在 ...
- 2016 UESTC Training for Data Structures J - 郭大侠与Rabi-Ribi CDOJ 1334 优先队列
J - 郭大侠与Rabi-Ribi 就是有N只兔子,每只兔子会存在a[i]秒,价值为v[i],然后每秒只能取一只兔子,问能取的兔子总价值的最大值是多少 用一个堆/优先队列维护就好了 首先我们先把兔子按 ...
- 2016 UESTC Training for Data Structures K - 郭大侠与甲铁城 CDOJ 1342 离线树状数组
K - 郭大侠与甲铁城 有一个区间,长度1e5,每个点有一种颜色,颜色属于[1,1000],离线询问某个区间的颜色种树,询问次数也少1e5 我的做法是离线树状数组 首先把区间保存下来,按右端点升序排序 ...
- 2016 UESTC Training for Data Structures F - 郭大侠与“有何贵干?” CDOJ 1335 线段树 扫描线 离散化
F - 郭大侠与"有何贵干?" 就是给一个三维空间,和N个长方体,问覆盖K次的体积 x和y都是1e9,但是z是[1,3],所以可以把这个分为两个二维平面,求被覆盖K次的面积,最后加 ...
- CDOJ 1284 苦恼的郭大侠 map启发式合并
苦恼的郭大侠 题目连接: http://acm.uestc.edu.cn/#/problem/show/1284 Description 花开雷霆崖,血染伊吕波. 公元1772年. 郭大侠终于照着天行 ...
最新文章
- 2072. Kirill the Gardener 3
- 如何修复GIT错误:目标文件为空?
- 产品经理整理PRD时,需要注意哪些点
- c字符串中包含双引号_码哥学Python,一起解密神秘的字符串密码
- 使用solrj和EasyNet.Solr进行原子更新
- matlab 散点图 线性回归图_吴恩达机器学习编程作业ex1-Matlab版
- 张东:大数据时代挑战与解决之道
- 如何提升代码的安全性 —— 代码混淆
- 在JavaScript中实现继承的几种方式
- Unity 基础数据库操作( Myspl 和 PostgreSQL)
- ppm\℃是什么意思/
- 一文搞定基因型数据清洗
- 中国养蚕及深加工市场盈利模式与投资价值评估报告(2022-2027年)
- STM32与jink连接烧录程序
- oracle中sql关键字,Oracle常用的sql语句
- 第13届中国生物特征识别大会即将盛大开幕,中科博宏期待您的到来!
- mui开发项目流程_mui项目开发环境搭建
- 【微服务集成阿里SMS短信服务发送短信】
- 牛客练习赛50 F 	tokitsukaze and Another Protoss and Zerg(分治NTT)
- 微软正式宣布 Visual Studio 2022!
热门文章
- qpython3l如何使用_如何用 python 抓取银行各年利率(动态的)?
- 答来信 :读书和实践哪个更重要?
- (详细)华为荣耀10 COL-AL10的usb调试模式在哪里开启的步骤
- 性能测试失败原因之性能测试十宗罪
- 爬取央视新闻国内版块新闻
- python turtle绕原点旋转_分享给大家几段有趣的代码,学会python画画可以不用自己动手啦...
- 腾讯AI Lab语音技术中心应用与研究介绍
- (转载)win10装机问题:windows必须安装在格式化为ntfs的分区
- 《斜杠青年:如何开启你的多重身份》读书笔记
- require 使用jq插件