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的更多相关文章
随机推荐
- 新手C#int.Parse、int.TryParse的学习2018.08.04
int.Parse()用于将字符串转换为32为int类型,但是在遇到非数字或者类似1.545这种小数的时候会报错,后来采用了int.TryParse,这个在转换后会判断是否可以正常转换,若不能,会返回 ...
- 使用SQL查询所有数据库名和表名
使用SQL查询所有数据库名和表名 MySQL中查询所有数据库名和表名 查询所有数据库 show databases; 1 1 查询指定数据库中所有表名 select table_name from i ...
- JavaScript RegExp.exec() 方法
定义和用法: exec() 方法用于检索字符串中的正则表达式的匹配. 语法: RegExpObject.exec(string); RegExpObject:必须参数,正则表达式: string:必须 ...
- [mongoDB] mongoDb
mongodb memcached redis kv数据库(key/value) mongodb 文档数据库,存储的是文档(Bson->json的二进制化). 特点:内部执行引擎为 ...
- 《剑指offer》读书笔记
二叉树 重建二叉树 面试题6:(p55) 题目:输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树. 假设输入的前序遍历和中序遍历的结果中都不含重复的数字. 例如输入前序遍历序列{1, 2, 4 ...
- C++ 类 & 对象-类成员函数-类访问修饰符-C++ 友元函数-构造函数 & 析构函数-C++ 拷贝构造函数
C++ 类成员函数 成员函数可以定义在类定义内部,或者单独使用范围解析运算符 :: 来定义. 需要强调一点,在 :: 运算符之前必须使用类名.调用成员函数是在对象上使用点运算符(.),这样它就能操作与 ...
- jmeter 各种配置修修改(后续增加)
1.修改物理内存 使用jmeter进行压力测试时遇到一段时间后报内存溢出outfmenmory错误,导致jmeter卡死了,先尝试在jmeter.bat中增加了JVM_ARGS="-Xmx ...
- 使用VMWare12.0安装Ubuntu系统
使用VMWare12.0安装Ubuntu系统 Vmware12的虚拟机的文档说明: http://pubs.vmware.com/workstation-12/index.jsp#com.vmware ...
- Linux C 网络编程——3. TCP套接口编程
1. 基本流程 2. socket() int socket(int domain, int type, int protocol); socket()打开一个网络通讯端口,如果成功的话,就像open ...
- 【树状DP】星象仪
题目描述 在寂寞的夜里,星象仪是非常浪漫的东西.但是,你作为一个精神稍微有点不太正常的Geek,把原本正常的星象仪改造得像电报发送器一样.当然,你这个的构造还要更加奇葩一点.具体来说,你的星象仪是一棵 ...