题目描述
在这片寂静的夜色之下,他就这样静静的降临在我的面前,他的眼神就好像能看透了一切,露出了无所畏惧的笑容。一袭白斗篷和一顶白礼帽,不带一丝多余的动作,他的脸在单眼眼睛跟逆光之下。
to 世纪末的魔术师
By the mysterious man
怪盗基德在上次失败后,对美丽的月之瞳宝石非常觊觎,他想要得到它,以世纪末的魔术师的名义。但是却遇到了重重机关阻拦,眼看到了月之瞳宝石盒之前,怪盗基德却停下了脚步。
“世界上有些谜,还是让它永远成为谜比较好”
话音刚落,只见一片白雾,待雾散开之时,他已经消失在月色之中。
在怪盗基德走后,你潜入进去,却发现,上面篆刻着一段奇怪的话:
在缥缈的宇宙中,有一条穿越时空的隧道,在这条隧道中,有着许多星体和能源体,他们都排列在一条直线上,对于每个星体而言,他们都需要能源体的照耀才能够存活于这条时空隧道当中,当然一个能源体可以同时为多个星体提供能源(对于一个能源体来说,也可能没有星体需要它提供能源)。但是,有所限制的是每个能源体只能为与自身相距x之内的星体提供能源。现在需要你找到最小的x,使得每个星体都能够得到能源(即每个星体必须得到至少一个能源体的照耀)。
现在是你作为怪盗基德的徒弟大展身手的时候了。

输入描述:
输入共三行,第一行有两个数n和m(1 <= n, m <= 1e5),分别代表有n个星体,m个能源体。
第二行有n个数a1, a2, … an,代表n个星体的位置。(-2e9 <= a[i] <= 2e9)
第三行有m个数b1, b2, … bm,代表m个能源体的位置。(-2e9 <= b[j] <= 2e9)

输出描述:
输出最小的x,满足每个星体都有至少一个能源体为其提供能源。

输入
3 2
-2 2 4
-3 0

输出
4

说明
对于3个位置的星体,与其距离最近的能源体距离分别为1,2,4,所以能源体照耀的范围只需为4即可

输入
4 3
7 -2 5 6
1 8 -3

输出
3

思路: 从左到右搜一次并记录(如果为能源体则星体与能源体之间相减,否则就是两星体距离相减加上前一个星体的值a[i]),再从右到左搜一次并记录(反着记录同上),对应下标两次取较小,在把所有元素sort输出最大值即可,注意一开始m1的值要大于4e9。
思路说个大概,具体看代码:

#include<iostream>
#include<cstdio>
#include<algorithm>
using namespace std;
struct node{long long int x;long long int y;
};
bool com(const node s1,const node s2)
{if(s1.x<s2.x)return true;elsereturn false;
}
long long int n,m,m1=5000000005,a[100005],b[100005],i,s,s1,j,z,cnt=0,t,t1,cnt1;
node c[200005];
int main()
{scanf("%lld %lld",&n,&m);for(i=0;i<n;i++){scanf("%lld",&c[i].x);c[i].y=0;}for(i=n;i<n+m;i++){scanf("%lld",&c[i].x);c[i].y=1;}sort(c,c+n+m,com);cnt=0;if(c[0].y==0){a[cnt]=m1;cnt++;}for(i=1;i<n+m;i++){if(c[i].y==0){if(c[i-1].y==1){a[cnt]=c[i].x-c[i-1].x;cnt++;}else{a[cnt]=c[i].x-c[i-1].x+a[cnt-1];cnt++;} }}cnt1=cnt;cnt--;if(c[n+m-1].y==0){b[cnt]=m1;cnt--;}for(i=n+m-2;i>=0;i--){if(c[i].y==0){if(c[i+1].y==1){b[cnt]=c[i+1].x-c[i].x;cnt--;}else{b[cnt]=c[i+1].x-c[i].x+b[cnt+1];cnt--;} }}for(i=0;i<cnt1;i++){if(a[i]>b[i]){a[i]=b[i];}}sort(a,a+cnt1);cout<<a[cnt1-1]<<endl;
}

西南民族大学第十届校赛(同步赛)(J题——怪盗基德 月之瞳宝石)相关推荐

  1. 西南民族大学第十届校赛(同步赛) 个人笔记 题解

    题目链接:https://ac.nowcoder.com/acm/contest/322#question 先来一波官方题解 作者:兔子韩 链接:https://ac.nowcoder.com/dis ...

  2. 新年第一篇!西南民族大学第十届校赛(同步赛)

    https://ac.nowcoder.com/acm/contest/322#question A.dreamstart的催促 代码: #include <cstdio> #includ ...

  3. 西南民族大学第十届校赛(同步赛)ABCEHJM题解

    A dreamstart的催促 用到了快速幂 a^b%c long long quick(long long a,long long b,long long c) {long long ans=1;a ...

  4. 西南民族大学第十届校赛(同步赛)(H题——Ricky’s RealDan’s Ricky)

    题目描述 The 2019 is coming!Ricky 和 RealDan为了庆祝2018一年的成果,准备去大吃一顿,然而 Ricky 想吃火锅, RealDan 想吃海鲜.为了解决吃什么的难题, ...

  5. 西南民族大学第十届校赛(同步赛)(F题——集训队脱单大法:这是一道只能由学姐我自己出数据的水题)

    题目描述 总所不周知!ZZZZone有了女朋友却谁也不知道.但是ZZZZone在集训队总是和陈大佬走的很近,每天搂搂抱抱十分不成体统!于是就被ZZZZone的女朋友给知道了,但是呢,ZZZZone的女 ...

  6. 西南民族大学第十届校赛 题解

    做了一个小时有事出去了,所以还没看其他的题目,放寒假的时候再补上吧. A :dreamstart的催促 简单快速幂的运用,水题. 链接:https://ac.nowcoder.com/acm/cont ...

  7. “科林明伦杯”哈尔滨理工大学第十届程序设计竞赛(同步赛) 题解

    "科林明伦杯"哈尔滨理工大学第十届程序设计竞赛(同步赛) 题解 萌新又来写题解啦 原题链接 B 减成一 题意:存在n个数,每次操作可以任选一个区间使得区间内的所有数字减一.问最少多 ...

  8. “科林明伦杯”哈尔滨理工大学第十届程序设计竞赛(同步赛)---全题目+题解

    文章目录 A.点对最大值 B.减成一 C.面积 D.扔硬币 E.赛马 F.三角形 G.养花 H.直线 I.字典序 J.最大值 A.点对最大值 链接:https://ac.nowcoder.com/ac ...

  9. “科林明伦杯”哈尔滨理工大学第十届程序设计竞赛(同步赛) F

    F 三角形 链接:https://ac.nowcoder.com/acm/contest/5758/F 来源:牛客网 小明有一根长度为a的木棒,现在小明想将木棒分为多段(每段木棒长度必须为整数), 使 ...

最新文章

  1. 网站DDOS***防护实战老男孩经验心得分享
  2. python脚本语言采用声音作为手段_python 利用pyttsx3文字转语音过程详解
  3. MSP430F5529 DriverLib 库函数学习笔记(十三)认识低功耗模式
  4. BugkuCTF-Crypto题MathEnglish
  5. [bzoj1008][HNOI2008]越狱-题解[简单组合数学]
  6. Springboot打jar包项目无法访问jsp问题解决
  7. 斯坦福人工智能与图像处理_斯坦福大学设计新型AI摄像头,能更快对图像进行分类...
  8. 计算机一级考excel基础知识,计算机一级考试模拟题(word、excel、ppt以及基础知识)...
  9. QQ浏览器+7654联盟
  10. 图形化硬件编程 ——数码管时钟——之米思齐篇
  11. 线索二叉树的建立和遍历
  12. 字节跳动面试:京东面试真题解析,薪资翻倍
  13. 【个人笔记】photoshop中回退撤销问题
  14. virtuoso小白入门
  15. Mybatis报错:Could not resolve type alias
  16. 基于stm32c8t6移植FreeRTOS问题汇总
  17. 单片机核心学习:(三)ARM架构(上)
  18. 深入理解Java虚拟机 JVM高级特性与最佳实践(二)
  19. Centos7 重启后ens33消失(外部连接不上)
  20. 关于等保2.0要求配置的身份鉴别(口令长度、复杂度、有效期)(口令登录失败、锁定多长时间)

热门文章

  1. 程序员如何获取自己学习路线(附带前端学习路线)
  2. 中泰语快速进行在线翻译的方法
  3. 用html5如何编写星球运动,HTML5---Canvas-模拟地球-星球运行轨道
  4. JavaSE 第七章集合 Collection
  5. 西南石油大学计算机考研人数,8所高校报考人数汇总,21考研这是要妥妥突破400万人的节奏?...
  6. Queue、Deque、LinkedList学习
  7. 原理 拉普拉斯金字塔_图像金字塔分层算法
  8. 我为什么选择Firefox作为主力浏览器
  9. Mapped Statements collection does not contain valu
  10. java武士风度_情感故事:淡定,淡定,再淡定!