郭大侠与Rabi-Ribi (优先队列)
最近郭大侠迷上了玩Rabi-Ribi这个游戏。
Rabi-Ribi呢,是一个打兔子的动作冒险游戏,萌萌哒的兔子在地上跑来跑去,好萌好萌呀~
这个游戏是这样玩的,郭大侠作为一个主角,拿着一个小锤子,他的目标是敲晕兔子,然后最后把这些敲晕的兔子都带回家。
当然咯,郭大侠想带回的兔子的总价值最高~
但是,兔子实在是太多了,郭大侠的锤子每一秒钟只能敲晕一只兔子,而且每一只兔子只会在地面上逗留a[i]秒,在a[i]秒之后,这一只兔子就会跑回自己的小窝里面。
所以郭大侠面临一些抉择,希望你能帮助他。
Input
第一行包含一个整数N表示有N个兔子在地上跑来跑去。
第二行NN个用空格分隔的整数a[i]表示第i只兔子冒出后停留的时间
第三行NN个用空格分隔的整数v[i]表示第i只兔子的价值。
1≤N≤100000
1≤a[i]≤5000
1≤v[i]≤1000
Output
输出郭大侠最多能获得的价值是多少
Sample Input
5
5 3 6 1 4
7 9 2 1 5
3
1 1 1
1 2 3
Sample Output
24
3
Hint
死宅真可怕,连可爱的兔子都要敲晕带回家 QAQ
//一眼看去貌似十分简单,随手写了已发wa了才,重新认识到这题!
因为每秒可以敲一只兔子,所以,将兔子按时间排序,然后,要使每秒可以创造的价值足够大,所以,就是选t只最大价值的兔子即可
#include <iostream>
#include <stdio.h>
#include <string.h>
#include <queue>
#include <algorithm>
using namespace std;
#define LL long long
#define MX 100005
struct Tu
{
int t,v;
bool operator < (const Tu& b)const
{
return t<b.t;
}
}tu[MX]; int main()
{
int n;
scanf("%d",&n);
for (int i=;i<n;i++)
scanf("%d",&tu[i].t);
for (int i=;i<n;i++)
scanf("%d",&tu[i].v);
sort(tu,tu+n);
priority_queue<int ,vector<int>,greater<int> > Q;
for (int i=;i<n;i++)
{
if (tu[i].t>Q.size())
{
Q.push(tu[i].v);
}
else
{
Q.push(tu[i].v);
Q.pop();
}
}
int ans = ;
while (!Q.empty()) ans+=Q.top(),Q.pop();
printf("%d\n",ans);
return ;
}
郭大侠与Rabi-Ribi (优先队列)的更多相关文章
- cdoj 1334 郭大侠与Rabi-Ribi Label:贪心+数据结构
郭大侠与Rabi-Ribi Time Limit: 3000/1000MS (Java/Others) Memory Limit: 65535/65535KB (Java/Others) 最近 ...
- cdoj 1334 郭大侠与Rabi-Ribi 贪心+数据结构
郭大侠与Rabi-Ribi Time Limit: 3000/1000MS (Java/Others) Memory Limit: 65535/65535KB (Java/Others) Su ...
- cdoj1334郭大侠与Rabi-Ribi
地址:http://acm.uestc.edu.cn/#/problem/show/1334 题目: 郭大侠与Rabi-Ribi Time Limit: 3000/1000MS (Java/Other ...
- cdoj 1342 郭大侠与甲铁城 树状数组+离线
郭大侠与甲铁城 Time Limit: 1500/800MS (Java/Others) Memory Limit: 65535/65535KB (Java/Others) Submit St ...
- CDOJ 1284 苦恼的郭大侠 map启发式合并
苦恼的郭大侠 题目连接: http://acm.uestc.edu.cn/#/problem/show/1284 Description 花开雷霆崖,血染伊吕波. 公元1772年. 郭大侠终于照着天行 ...
- cdoj1342郭大侠与甲铁城
地址:http://acm.uestc.edu.cn/#/problem/show/1342 题目: 郭大侠与甲铁城 Time Limit: 1500/800MS (Java/Others) ...
- cdoj1339郭大侠与线上游戏
地址:http://acm.uestc.edu.cn/#/problem/show/1339 题目: 郭大侠与线上游戏 Time Limit: 6000/2000MS (Java/Others) ...
- cdoj1338郭大侠与英雄学院
地址:http://acm.uestc.edu.cn/#/problem/show/1338 思路: 郭大侠与英雄学院 Time Limit: 6000/2000MS (Java/Others) ...
- cdoj1337郭大侠与阴阳家
地址:http://acm.uestc.edu.cn/#/problem/show/1337 思路: 郭大侠与阴阳家 Time Limit: 3000/4000MS (Java/Others) ...
随机推荐
- POJ1037 A decorative fence 【动态规划】
A decorative fence Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 6489 Accepted: 236 ...
- 用Volley-nullpointerexception
public Request(int method, String url, Response.ErrorListener listener) { mMethod = method; mUrl = u ...
- 【C++基础 03】do...while(0)妙用
我的主题是,有时候知道一些细节会让你写出更好的代码. ============================================ 之前学coocs2d-x的时候,发现有非常多do...w ...
- lua与c++ 中布尔布bool值对应关系
lua代码返回值为真c++ lua_toboolean 返回一个 int lua true = 1 false = 0 c++给lua返回 lua_pushboolean 1 = true 0 = ...
- 【转】原生js仿jquery一些常用方法
现在利用扩展原型的方法实现一些jquery函数: 1.显示/隐藏 ? 1 2 3 4 5 6 7 8 9 10 //hide() Object.prototype.hide = function(){ ...
- Coolite简介
Coolite Toolkit 简介 Coolite Toolkit 是一个支持ASP.NET AJAX的Web控件 Coolite Toolkit是基于跨浏览器的ExtJS 库开发而来的,并且简化了 ...
- Linux 性能监控 —— Load Average
一. 简单介绍 top. uptime. cat /proc/loadavg 命令中 Load average: 4.90, 5.51, 5.77 整体含义: 正在执行的任务数量 + 排 ...
- Python - pandas 数据分析
pandas: powerful Python data analysis toolkit 官方文档: http://pandas.pydata.org/pandas-docs/stable/ 1. ...
- .NET Core环境安装
.Net Core可从https://www.microsoft.com/net/download下载 如果你使用自己喜欢的命令行工具或使用Visual Studio Code,你需要下载.NET C ...
- sshd服务安装和配置管理
1.SSHD简介(介绍) SSH协议:安全外壳协议,为Secure Shell的缩写,SSH为建立在应用层和传输层基础上的安全协议. sshd服务使用SSH协议可以用来进行远程控制,或在计算机之间传送 ...