HDU 4544

Tags: 数据结构,贪心

Analysis:

将兔子的血量从大到小排序,将箭的杀伤力从大到小排序,对于每一个兔子血量,

将比他大的杀伤力大的剑压入优先队列,优先队列自己重写,让它每次抛出的数为价钱最小。

Code:

#include <cstdio>
#include <queue>
#include <algorithm>
#include <functional>
using namespace std;
typedef long long LL;
const int maxn = 100010;
struct tt {
int d;
int p;
bool operator <(const tt& t) const {
return d>t.d||(d==t.d&&p<t.p);
}
} pt[maxn];
int b[maxn];
priority_queue<int , vector<int>, greater<int> > q;
int main()
{
int n, m, i, j;
while(~scanf("%d%d",&n,&m)) {
for(i=1; i<=n; i++) scanf("%d",&b[i]);
for(i=1; i<=m; i++) scanf("%d",&pt[i].d);
for(i=1; i<=m; i++) scanf("%d",&pt[i].p);
sort(b+1,b+1+n,greater<int>());
sort(pt+1,pt+1+m);
while(!q.empty()) q.pop();
LL ans = 0;
bool flag = 1;
for(i=1,j=1; i<=n; i++) {
while(j<=m&&pt[j].d>=b[i]) {
q.push(pt[j].p);
j++;
}
if(!q.empty()) {
ans += q.top();
q.pop();
} else {
flag = 0;
break;
}
}
if(flag) printf("%I64d\n",ans);
else printf("No\n");
}
return 0;
}

HDU 4544 湫湫系列故事――消灭兔子的更多相关文章

  1. 湫湫系列故事——消灭兔子(hdu4544)

    湫湫系列故事--消灭兔子 Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 65535/32768 K (Java/Others)Tota ...

  2. HDU - 4544 湫湫系列故事——消灭兔子(优先队列+贪心)

    题目: 最近,减肥失败的湫湫为发泄心中郁闷,在玩一个消灭免子的游戏. 游戏规则很简单,用箭杀死免子即可. 箭是一种消耗品,已知有M种不同类型的箭可以选择,并且每种箭都会对兔子造成伤害,对应的伤害值分别 ...

  3. HDU 4544 湫湫系列故事——消灭兔子 (优先队列)

    湫湫减肥  越减越肥!    最近,减肥失败的湫湫为发泄心中郁闷,在玩一个消灭免子的游戏.  游戏规则很简单,用箭杀死免子即可.  箭是一种消耗品,已知有M种不同类型的箭可以选择,并且每种箭都会对兔子 ...

  4. HDU4544 湫湫系列故事――消灭兔子

    HDU 4544 Tags: 数据结构,贪心 Analysis: 将兔子的血量从大到小排序,将箭的杀伤力从大到小排序,对于每一个兔子血量, 将比他大的杀伤力大的剑压入优先队列,优先队列自己重写,让它每 ...

  5. hdu 4544 湫湫系列故事——消灭兔子

    http://acm.hdu.edu.cn/showproblem.php?pid=4544 优先队列+贪心. #include <cstdio> #include <queue&g ...

  6. hdu 4544 湫湫系列故事——消灭兔子(优先队列)

    题意:n只兔子(有血量),m只箭(有伤害.花费),每只兔子只能被射一次,求射死所有兔子的最少花费. 思路:贪心,2重循环,兔子从血量高到低,箭从伤害高到低,用能射死兔子的箭中花费最小的箭射. #inc ...

  7. hdu 4544 湫湫系列故事——消灭兔子 优先队列+贪心

    将兔子的血量从小到大排序,箭的威力也从小到大排序, 对于每仅仅兔子将威力大于血量的箭增加队列,写个优先队列使得出来数位价钱最少.. #include<stdio.h> #include&l ...

  8. 【HDOJ】4544 湫湫系列故事——消灭兔子

    贪心,普通贪心两层循环TLE了,然后用优先级队列维护内层. #include <iostream> #include <cstdio> #include <cstring ...

  9. HDU-4544 湫湫系列故事——消灭兔子 (贪心+优先队列)

    题目思路 将兔子的血量从大到小排列,将箭的属性写在类中(结构体也成),排序按照伤害从大到小排列,若有相等的则按价格从小到大排. 代码 #include<bits/stdc++.h> usi ...

随机推荐

  1. JRebel 6 破解版及使用方法

    最近更新到jrebel6.2.1了,我自己做了个技术分享的微信公众号(茶爸爸),有心的朋友可以来这里一起学习 云盘下载链接: http://pan.baidu.com/s/1bnGzMUF 配置: - ...

  2. elk 架构

  3. centos下彻底删除MYSQL 和重新安装MYSQL

    在Centos6.3上装了一个Mysql,结果mysql库被我玩丢了(这里面管理了mysql的权限).现在采用先彻底删除,然后重新安装Mysql. 1 删除Mysql yum remove  mysq ...

  4. 【Maven】pom.xml 配置 eclipse错误

    <!-- servlet --> <dependency> <groupId>javax.servlet</groupId> <artifactI ...

  5. 关于方法中的形参out

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...

  6. Linux内核态抢占机制分析(转)

    Linux内核态抢占机制分析  http://blog.sina.com.cn/s/blog_502c8cc401012pxj.html 摘 要]本文首先介绍非抢占式内核(Non-Preemptive ...

  7. CentOS安装rar及用法

    1.下载安装rar wget http://www.rarsoft.com/rar/rarlinux-x64-5.4.b3.tar.gztar -zxvf rarlinux-x64-.tar.gz - ...

  8. Ubuntu15.04上为火狐浏览器安装Adobe Flash Player插件

    前言:最新版的ubuntu好像没有flashplayer,而且更新源也无法更新成功,找些资料终于发现 这个需要自己手动配置.由于flashplayer无法安装,导致视频,百度上传等功能都无法使用: 安 ...

  9. CentOS Linux使用crontab运行定时任务详解

    参考博文: (总结)CentOS Linux使用crontab运行定时任务详解

  10. 将 jsp 页面的值 传到struts2 action中(不是表单中的值)

    JSP: 页面: <%@ page language="java"  pageEncoding="GBK"%> <%@taglib prefi ...