HDU 5281 BestCoder Round #47 1002:Senior's Gun
Senior's Gun
学姐姐是一个酷酷的枪手。 她常常会随身携带n把枪,每把枪有一个攻击力a[i]。 有一天她遇到了m只怪兽,每只怪兽有一个防御力b[j]。现在她决定用手中的枪消灭这些怪兽。 学姐姐可以用第i把枪消灭第j只怪兽当且仅当b[j]≤a[i],同时她会获得a[i]−b[j]的分数。 每把枪至多只能使用一次,怪兽死后也不会复活。现在学姐姐想知道她最多能得到多少分(她可以不用消灭所有的怪兽)。
第一行包含一个整数T,表示测试数据组数。 对于每组测试数据: 第一行包含两个整数n,m,表示枪的数量和怪兽的数量。 第二行包含n个整数a[i],表示枪的攻击力。 第三行包含m个整数b[j],表示怪兽的防御力。 1≤n,m≤100000, −109≤a[i],b[j]≤109。
对于每组测试数据,输出一个整数表示对应的答案。
1
2 2
2 3
2 2
1
最后AC的时候我的内心是极为崩溃的,又是因为一些小细节错过了自己头一次在周赛中AC两道题的机会,这次要是AC两道题说明自己这一段时间以来还是有一些进步的,可惜方法没有错啊光速小子为什么没有自信检查一下细节啊,那时候最后比的15分钟,自己完全乱了,在思考方法哪里不对,其实仔细观察数据会发现ans肯定要超出啊,int变long long 啊。
发现还是真真正正的比赛锻炼思考的能力,就算是一些小型的比赛。头脑要保持冷静啊光速小子,cmp也写错,关键是还加进了两个sort里面,你当时的头 是有多混乱你告诉我。。。
这题就是贪心,用最狠的武器挑最软的柿子捏啊,没什么好说的。整个贪一遍,就AC了。。。就这么简单。。。也不要总把第二题想象得有多难。。。。。
代码:
#include <iostream>
#include <string>
#include <cstring>
#include <algorithm>
#include <cmath>
using namespace std; int a[100005];
int b[100005]; bool cmp(int a,int b)
{
return a>b;
}
int main()
{
int Test;
int gun_num,guai,i,j;
long long ans;
cin>>Test; while(Test--)
{
ans=0;
cin>>gun_num>>guai; for(i=1;i<=gun_num;i++)
cin>>a[i];
for(i=1;i<=guai;i++)
cin>>b[i]; sort(a+1,a+gun_num+1,cmp);
sort(b+1,b+guai+1); i=1;j=1;
while(i<=gun_num&&j<=guai)
{
if(a[i]-b[j]>0)
ans += a[i]-b[j];
i++;
j++;
}
cout<<ans<<endl;
}
return 0;
}
版权声明:本文为博主原创文章,未经博主允许不得转载。
HDU 5281 BestCoder Round #47 1002:Senior's Gun的更多相关文章
- HDU 5280 BestCoder Round #47 1001:Senior's Array
Senior's Array Accepts: 199 Submissions: 944 Time Limit: 2000/1000 MS (Java/Others) Memory Limit ...
- HDU 5945 / BestCoder Round #89 1002 Fxx and game 单调队列优化DP
Fxx and game 问题描述 青年理论计算机科学家Fxx给的学生设计了一款数字游戏. 一开始你将会得到一个数\:XX,每次游戏将给定两个参数\:k,tk,t, 任意时刻你可以对你的数执行下面 ...
- hdu 4932 BestCoder Round #4 1002
这题真是丧心病狂,引来今天的hack狂潮~ Miaomiao's Geometry Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65 ...
- hdu 5643 BestCoder Round #75
King's Game Accepts: 249 Submissions: 671 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 6 ...
- hdu 5641 BestCoder Round #75
King's Phone Accepts: 310 Submissions: 2980 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: ...
- 贪心/二分查找 BestCoder Round #43 1002 pog loves szh II
题目传送门 /* 贪心/二分查找:首先对ai%=p,然后sort,这样的话就有序能使用二分查找.贪心的思想是每次找到一个aj使得和为p-1(如果有的话) 当然有可能两个数和超过p,那么an的值最优,每 ...
- Manacher BestCoder Round #49 ($) 1002 Three Palindromes
题目传送门 /* Manacher:该算法能求最长回文串,思路时依据回文半径p数组找到第一个和第三个会文串,然后暴力枚举判断是否存在中间的回文串 另外,在原字符串没啥用时可以直接覆盖,省去一个数组空间 ...
- 二分图判定+点染色/并查集 BestCoder Round #48 ($) 1002 wyh2000 and pupil
题目传送门 /* 二分图判定+点染色:因为有很多联通块,要对所有点二分图匹配,若不能,存在点是无法分配的,no 每一次二分图匹配时,将点多的集合加大最后第一个集合去 注意:n <= 1,no,两 ...
- 暴力+降复杂度 BestCoder Round #39 1002 Mutiple
题目传送门 /* 设一个b[]来保存每一个a[]的质因数的id,从后往前每一次更新质因数的id, 若没有,默认加0,nlogn复杂度: 我用暴力竟然水过去了:) */ #include <cst ...
随机推荐
- 5.8 Nginx 常用功能的配置
- 吴裕雄--天生自然JAVAIO操作学习笔记:System类对IO的支持和BuffereRead
import java.io.OutputStream ; import java.io.IOException ; public class SystemDemo01{ public static ...
- 机器学习中 为何要使用 独热编码 one-hot
背景 接触tensorflow时,学习到mnist,发现处理数据的时候采取one-hot编码,想起以前搞FPGA状态机遇到过格雷码与独热码. 解析: 将离散型特征使用one-hot编码,确实会让特征之 ...
- C语言学习巩固(泛型选择)
在程序设计中,没有特定类型,但是一旦指定一种类型,就可以转换成指定类型的代码, 例如C++有一个关键tmeplate关键字用于声明模板,而模板的最大应用便是创建泛型算法.可惜的是c没有这个关键字 但是 ...
- MyISAM与InnoDB 的区别
1. 事务:InnoDB支持,MyISAM不支持,在InnoDB中每一条SQL语句都会默认封装成事务自动提交,然而这样会影响速度,因此最好把多条SQL语句放在begin和commit之间组成一个事务: ...
- spingboot2.0外部引入xml配置文件时找不到文件等报错
之前的项目可以启动,后面不知道为什么都不行了,报错如下: SLF4J: Class path contains multiple SLF4J bindings. SLF4J: Found bindin ...
- Android的事件处理机制之基于回调的事件处理
回调机制 如果说事件监听机制是一种委托式的事件处理,那么回调机制则与之相反,对于基于回调的事件处理模型来说,事件源与事件监听器是统一的,换种方法说事件监听器完全消失了,当用户在GUI组件上激发某个事件 ...
- thinkphp5+python.apscheduler实现计划任务
1.thinkphp5配置自定义命令行 /application/console/command namespace app\console\command; use think\console\Co ...
- spark sortShuffleWriter源码学习
查看的源码为spark2.3 调用ShuffleMapTask的runTask方法 org.apache.spark.scheduler.ShuffleMapTask#runTask ShuffleM ...
- C#:string、stringBuffer、stringBuilder的区别
好脑子不如烂笔头,总是记不住,记下来吧 依然 搬运 地址: http://blog.csdn.net/qq_28187979/article/details/76607253 ------------ ...