jzoj1792
#include<bits/stdc++.h>
using namespace std;
long long a[100010],m,n;
int main(){
scanf("%lld",&n);
for(int i=1;i<=n;i++)scanf("%lld",&a[i]);
sort(a+1,a+n+1);
scanf("%lld",&m);
while(m--){
long long a1,b1,a2,b2;
scanf("%lld%lld%lld%lld",&a1,&b1,&a2,&b2);
if(a1>a2){
swap(a1,a2);
swap(b1,b2);
}
if((b1>0&&b2>0)||(b1<0&&b2<0))
printf("%lld\n",abs(a1-a2)+abs(b1-b2));
else{
int v=upper_bound(a+1,a+n+1,(a1+a2)/2)-a;
if(a[v]>=a1&&a[v]<=a2)
printf("%lld\n",abs(a1-a2)+abs(b1-b2));
else{
if(v!=1&&v!=n+1)v--;
int w=lower_bound(a+1,a+n+1,(a1+a2)/2)-a;
int c1=abs(b1-b2)+abs(a[w]-a1)+abs(a[w]-a2);
int c2=abs(b1-b2)+abs(a[w-1]-a1)+abs(a[w-1]-a2);
int c3=abs(b1-b2)+abs(a[w+1]-a1)+abs(a[w+1]-a2);
printf("%d\n",min(c1,min(c2,c3)));
}
}
}
}
zj:
在答案有误差时,可以对多种可能的答案取最小值来确定结果
jzoj1792的更多相关文章
随机推荐
- 迷你MVVM框架 avalonjs 学习教程1、引入avalon
avalon是国内最强大的MVVM框架,没有之一,虽然淘宝KISSY团队也搞了两个MVVM框架,但都无疾而终.其他的MVVM框架都没几个.也只有外国人与像我这样闲的架构师才有时间钻研这东西.我很早之前 ...
- Hadoop之MapReduce学习笔记(一)
主要内容:mapreduce整体工作机制介绍:wordcont的编写(map逻辑 和 reduce逻辑)与提交集群运行:调度平台yarn的快速理解以及yarn集群的安装与启动. 1.mapreduce ...
- TIME_WAIT和CLOSE_WAIT状态区别
[TIME_WAIT和CLOSE_WAIT状态区别] 常用的三个状态是:ESTABLISHED 表示正在通信,TIME_WAIT 表示主动关闭,CLOSE_WAIT 表示被动关闭. TCP协议规定,对 ...
- Emacs中编辑保存makefile文件时会错误地将TAB转成空格的解决方法
问题描述 我的Emacs使用了Purcell的配置,在其配置中使用了whitespace-cleanup,且通过在.emacs.d/lisp/init-edit-utils.el中设定: (requi ...
- Django基础学习三_路由系统
今天主要来学习一下Django的路由系统,视频中只学了一些皮毛,但是也做下总结,主要分为静态路由.动态路由.二级路由 一.先来看下静态路由 1.需要在project中的urls文件中做配置,然后将匹配 ...
- golang之map数据类型
先上代码…… package main import "fmt" func testMap() { //两种声明map方式,切记,必须初始化才能用,否则panic //var a ...
- h5 时间控件问题,怎么设置type =datetime-local 的值
在js中设置自定义时间到date控件的方法: 1.在html5中定义时间控件 <input type="date" id="datePicker" val ...
- vue生命周期小笔记
一张图谨记vue每个生命周期的获取状态 beforecreate :可以在这加个loading事件 created :在这结束loading,还做一些初始化,实现函数自执行 mounted : 在这发 ...
- ASP.NET Web API之消息[拦截]处理(转)
出处:http://www.cnblogs.com/Leo_wl/p/3238719.html 标题相当难取,内容也许和您想的不一样,而且网上已经有很多这方面的资料了,我不过是在实践过程中作下记录.废 ...
- swift -懒加载创建view
// 只有外界访问到headerView的时候才会去执行闭包, 然后将闭包的返回值赋值给headerView // 注意: 一定要记住闭包后面需要写上(), 代表执行闭包 //懒加载 ...