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++binder服务和客户端实例
继承关系: 文件关系 IHelloService.h /* 参考: frameworks\av\include\media\IMediaPlayerService.h */ #ifndef ANDRO ...
- Hadoop Streaming:aggregate
[Hadoop Streaming:aggregate] 1.实例1 测试文件test.txt mapper程序: 运行: $hadoop streaming -input /app/test.txt ...
- 获取set()和push()方法向值栈放的数据
------------------siwuxie095 获取 set() 方法向值栈放的数据 1.具体步骤 (1)在 Action 中使用 set() 方法向值栈放数据 (2)在 JSP 页面中从值 ...
- war项目部署流程
准备: 1安装jdk1.7及以上版本 2安装tomcat7及以上版本 到%tomcat%/bin目录下记事本编辑server.xml, 配置<Connector>元素port端口,及< ...
- 使用IntelliJ IDEA,gradle开发Java web应用步骤
最近 正在学习gradle构建工具的使用,看了一堆的文档,有点一知半解,索性动作实践一把,在以后的自己的项目中尝试使用看看.目前手头用的是IntelliJ IDEA 14,搭建了一天终于明白怎么集成g ...
- golang之map数据类型
先上代码…… package main import "fmt" func testMap() { //两种声明map方式,切记,必须初始化才能用,否则panic //var a ...
- Cook-Torrence Illumination Model 的一些数学说明
Cook-Torrence 光照模型如下: 这个Io就是计算后最终的光强,主要是用来计算镜面反射光,漫反射和环境光的计算和Phong模型一致. F:Fresnel反射系数.主要用来说明反射光强度占入射 ...
- 生物信息学——RNA的剪切过程
生物信息学——RNA的剪切过程 外显子(exon expressed region)是真核生物基因的一部分,它在剪接(Splicing)后仍会被保存下来,并可在蛋白质生物合成过程中被表达为蛋白质. ...
- Luogu 4449 于神之怒加强版
挺套路的题,然而一开始还是想错了…… $\sum_{i = 1}^{n}\sum_{j = 1}^{m}gcd(i, j) ^ {k} = \sum_{T = 1}^{min(n, m)}\left ...
- Luogu 5170 【模板】类欧几里得算法
原理不难但是写起来非常复杂的东西. 我觉得讲得非常好懂的博客. 传送门 我们设 $$f(a, b, c, n) = \sum_{i = 0}^{n}\left \lfloor \frac{ai + ...