P1678 烦恼的高考志愿(二分)
emmmm,我感觉我在解题的过程中还是有点吃亏的,因为,我知道是二分,只是大概知道怎么分,没有管这道到底是需要怎样的二分。然后在题上卡了很久。
思路:要找到填报学校的录取线x和自己的分数y的绝对值最小,其实,我们直接找到第一个大于它的数字和最后一个小于它数字比较一下就可以了。当然,进行排序后。
这两个值是相邻的,那就直接利用二分进行查找第一个大于它的数即可!还有一个小细节就是,要考虑找不到第一个大于它的数的情况。
#include<iostream>
#include<algorithm>
using namespace std;
const int maxn=1e5+;
int a[maxn], b[maxn], n, m;
int l, r, mid, ans, sum; int main(){
cin>>n>>m;
for(int i=;i<=n;++i)cin>>a[i];
for(int i=;i<=m;++i)cin>>b[i];
sort(a+, a+n+);
//找到第一个比它大的
for(int i=;i<=m;++i){
l=; r=n;
while(l<r){
mid=(l+r)>>;
if(a[mid]>=b[i]){r=mid;} //将边界左移动
else l=mid+;
}
if(b[i]<a[]){ //找不到第一个小于它的数
sum+=a[]-b[i];
}else{
sum+=min(abs(a[l-]-b[i]), abs(a[l]-b[i])); //比较第一个大于,最后一个小于的绝对值的大小,取小的
}
}
cout<<sum<<endl;
}
P1678 烦恼的高考志愿(二分)的更多相关文章
- 洛谷 P1678 烦恼的高考志愿
题目背景 计算机竞赛小组的神牛V神终于结束了万恶的高考,然而作为班长的他还不能闲下来,班主任老t给了他一个艰巨的任务:帮同学找出最合理的大学填报方案.可是v神太忙了,身后还有一群小姑娘等着和他约会,于 ...
- P1678 烦恼的高考志愿
P1678题库链接:https://www.luogu.org/problem/P1678 难度:普及- 算法标签:模拟,贪心,排序,二分查找 1.朴素模拟 O(m*n) 得分30 先将m个学校的录取 ...
- 中国高考志愿填报与职业趋势分析 - ActiveReports 大数据分析报告
中国高考志愿填报与职业趋势分析 1977年中国高考制度恢复,重新开启了人才成长之门.40多年来,高考累积录取人数增长了27倍, 2.28亿人报名,9900万名高素质人才先后通过了中国高等教育的培养,高 ...
- NOIP模拟赛18 皇帝的烦恼O(∩_∩)O 二分+DP
题目描述 经过多年的杀戮,秦皇终于统一了中国.为了抵御外来的侵略,他准备在国土边境安置n名将军.不幸的是这n名将军羽翼渐丰,开始展露他们的狼子野心了.他们拒绝述职.拒绝接受皇帝的圣旨. 秦皇已经准备好 ...
- 高考志愿填报:java 软件 程序员 目前的就业现状
大约在17年前,也就是2000年,学计算机专业的学生可以有大部分都进入本专业,并且就业非常容易.哪怕只会office套件,想找个工作也很简单.那时候学计算机就是最热门的行业. 那时候,搞Java的还是 ...
- 扒一扒IT大佬高考:马云数学1分考北大 李彦宏是状元
http://news.cnblogs.com/n/522622/ 高考今天正式拉开序幕,而像李彦宏.马云等 IT 大佬之前也都参加过高考,他们成绩又都是怎样的呢? 马化腾:放弃天文梦选择计算机 20 ...
- Python预测2020高考分数和录取情况可能是这样
前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 作者:打磨虾 “迟到”了一个月的高考终于要来了. 正好我得到了一份山东新高 ...
- Python预测2020高考分数和录取情况
“迟到”了一个月的高考终于要来了. 很多人学习python,不知道从何学起.很多人学习python,掌握了基本语法过后,不知道在哪里寻找案例上手.很多已经做案例的人,却不知道如何去学习更加高深的知识. ...
- 思达index网站
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
随机推荐
- #WEB安全基础 : HTML/CSS | 0x4HTML模块化
想让你的网页变得整洁吗?找我就对了,当然你会认识几个新元素,和它们交朋友吧! 我帮你联系一下这几个新元素,这样交朋友就变得简单了 images里放着图片 以下是index.html的代码 < ...
- SQL查询,关联查询的区别 (LEFT JOIN 、LEFT OUTER JOIN、INNER JOIN)
), f2 ) ) ), f2 ) ) ------------------------------------------------ ','a1') ','a2') ','a3') ','a4') ...
- canvas-6shadow.html
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- UOJ#310. 【UNR #2】黎明前的巧克力(FWT)
题意 题目链接 Sol 挂一个讲的看起来比较好的链接 然鹅我最后一步还是没看懂qwq.. 坐等SovietPower大佬发博客 #include<bits/stdc++.h> using ...
- jQuery 简单案例
案例一:全选.反选.取消实例 <!DOCTYPE html> <html lang="en"> <head> <meta charset= ...
- Dynamics 365 Online-试用环境申请地址
https://trials.dynamics.com/Dynamics365/Signup/sales 需要用企业邮箱
- 网络控制器intel 82599, powerpc 830的BD描述符结构
一.Intel 82599的BD结构 1.文档名称“82599-10-gbe-controller-datasheet.pdf”,可以从intel官网上下载. https://www.intel.cn ...
- Linux Linux下最大文件描述符设置
Linux下最大文件描述符设置 by:授客 QQ:1033553122 1. 系统可打开最大文件描述符设置 查看系统可打开最大文件描述符 # cat /proc/sys/fs/file-max 6 ...
- Android开发CheckBox控件,全选,反选,取消全选
在Android开发中我们经常会使用CheckBox控件,那么怎么实现CheckBox控件的全选,反选呢 首先布局我们的界面: <?xml version="1.0" enc ...
- Android为TV端助力 事件分发机制
android事件分发机制,给控件设置ontouch监听事件,当ontouch返回true时,他就不会走onTouchEvent方法,要想走onTouchEvent方法只需要返回ontouch返回fa ...