最近郭大侠迷上了玩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

  1. 5
  2. 5 3 6 1 4
  3. 7 9 2 1 5

  1. 3
  2. 1 1 1
  3. 1 2 3

Sample Output

  1. 24

  1. 3

Hint

死宅真可怕,连可爱的兔子都要敲晕带回家 QAQ

//一眼看去貌似十分简单,随手写了已发wa了才,重新认识到这题!

因为每秒可以敲一只兔子,所以,将兔子按时间排序,然后,要使每秒可以创造的价值足够大,所以,就是选t只最大价值的兔子即可

  1. #include <iostream>
  2. #include <stdio.h>
  3. #include <string.h>
  4. #include <queue>
  5. #include <algorithm>
  6. using namespace std;
  7. #define LL long long
  8. #define MX 100005
  9. struct Tu
  10. {
  11. int t,v;
  12. bool operator < (const Tu& b)const
  13. {
  14. return t<b.t;
  15. }
  16. }tu[MX];
  17.  
  18. int main()
  19. {
  20. int n;
  21. scanf("%d",&n);
  22. for (int i=;i<n;i++)
  23. scanf("%d",&tu[i].t);
  24. for (int i=;i<n;i++)
  25. scanf("%d",&tu[i].v);
  26. sort(tu,tu+n);
  27. priority_queue<int ,vector<int>,greater<int> > Q;
  28. for (int i=;i<n;i++)
  29. {
  30. if (tu[i].t>Q.size())
  31. {
  32. Q.push(tu[i].v);
  33. }
  34. else
  35. {
  36. Q.push(tu[i].v);
  37. Q.pop();
  38. }
  39. }
  40. int ans = ;
  41. while (!Q.empty()) ans+=Q.top(),Q.pop();
  42. printf("%d\n",ans);
  43. return ;
  44. }

郭大侠与Rabi-Ribi (优先队列)的更多相关文章

  1. cdoj 1334 郭大侠与Rabi-Ribi Label:贪心+数据结构

    郭大侠与Rabi-Ribi Time Limit: 3000/1000MS (Java/Others)     Memory Limit: 65535/65535KB (Java/Others) 最近 ...

  2. cdoj 1334 郭大侠与Rabi-Ribi 贪心+数据结构

    郭大侠与Rabi-Ribi Time Limit: 3000/1000MS (Java/Others)     Memory Limit: 65535/65535KB (Java/Others) Su ...

  3. cdoj1334郭大侠与Rabi-Ribi

    地址:http://acm.uestc.edu.cn/#/problem/show/1334 题目: 郭大侠与Rabi-Ribi Time Limit: 3000/1000MS (Java/Other ...

  4. cdoj 1342 郭大侠与甲铁城 树状数组+离线

    郭大侠与甲铁城 Time Limit: 1500/800MS (Java/Others)     Memory Limit: 65535/65535KB (Java/Others) Submit St ...

  5. CDOJ 1284 苦恼的郭大侠 map启发式合并

    苦恼的郭大侠 题目连接: http://acm.uestc.edu.cn/#/problem/show/1284 Description 花开雷霆崖,血染伊吕波. 公元1772年. 郭大侠终于照着天行 ...

  6. cdoj1342郭大侠与甲铁城

    地址:http://acm.uestc.edu.cn/#/problem/show/1342 题目: 郭大侠与甲铁城 Time Limit: 1500/800MS (Java/Others)     ...

  7. cdoj1339郭大侠与线上游戏

    地址:http://acm.uestc.edu.cn/#/problem/show/1339 题目: 郭大侠与线上游戏 Time Limit: 6000/2000MS (Java/Others)    ...

  8. cdoj1338郭大侠与英雄学院

    地址:http://acm.uestc.edu.cn/#/problem/show/1338 思路: 郭大侠与英雄学院 Time Limit: 6000/2000MS (Java/Others)    ...

  9. cdoj1337郭大侠与阴阳家

    地址:http://acm.uestc.edu.cn/#/problem/show/1337 思路: 郭大侠与阴阳家 Time Limit: 3000/4000MS (Java/Others)     ...

随机推荐

  1. python abstractmethod 对象比较

    from functools import total_ordering from abc import ABCMeta,abstractmethod @total_ordering class Sh ...

  2. TP框架I方法详解

    TP框架I方法详解   I方法是ThinkPHP众多单字母函数中的新成员,其命名来自于英文Input(输入),主要用于更加方便和安全的获取系统输入变量,可以用于任何地方,用法格式如下:I('变量类型. ...

  3. jquery 事件,注册 与重复事件处理

    jquery有时候会出现重复注册一个事件的问题,导致点击一个事件,这个事件被重复执行,也就是触发事件的次数有几次, 那么这个事件就会被执行叠加重复几次. 我这边做的一个项目,在某个页面初始化的时候,给 ...

  4. HDU 5407(2015多校10)-CRB and Candies(组合数最小公倍数+乘法逆元)

    题目地址:pid=5407">HDU 5407 题意:CRB有n颗不同的糖果,如今他要吃掉k颗(0<=k<=n),问k取0~n的方案数的最小公倍数是多少. 思路:首先做这道 ...

  5. 千万级大数据的Mysql数据库SQL语句优化

    1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引. 2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索 ...

  6. 一个文件查看你选择 Run as Android applications 都干了啥

    <?xml version="1.0" encoding="UTF-8"?> <project name="PushFastDemo ...

  7. popupwindow从底部弹出

    参考了网上的一些代码,自己写了个类,上代码 /** * Created by Lee on 2016/2/26. */ public class CameraPopupWindow { private ...

  8. JPA ID生成策略(转---)

    尊重原创:http://tendyming.iteye.com/blog/2024985 JPA ID生成策略 @Table Table用来定义entity主表的name,catalog,schema ...

  9. win7安装RabbitMQ

    1.下载并安装erlang http://www.erlang.org/downloads 2.下载并安装RabbitMQ http://www.rabbitmq.com/install-window ...

  10. Vue 组件5 高级异步组件

    自2.3.0起,异步组件的工厂函数也可以返回一个如下的对象. const AsyncComp = () => ({ // 需要加载的组件. 应当是一个 Promise component: im ...