P2952【FJ Training 2014 Day7】兔子 | ||
|
Description
有一片无限大的草地,其可以用平面直角坐标系的第一象限表示,坐标系的其余部分均为沙漠。草地上有n只兔子和n个兔穴,每个兔穴仅能容纳一只兔子。
狼是兔子们最大的敌人。每填,每只兔子会在草地上的某个特定位置吃草,当狼来捕食时,兔子们便开始逃跑。当前处在(x,y)的兔子,下一步可以到达(x-y,y),(x,y-x),(x+y,y),(x,x+y)这四个位置中的任意一个。任何时刻兔子都不能到达沙漠区域(即不能到达在坐标轴上或其他象限内的位置)。如果兔子所在的位置下有空着的兔穴,兔子就可以钻进兔穴里,从而躲避狼的追击。古人云“狡兔三窟”,兔子们很聪明,虽然他们没有挖到更多的兔穴,但是他们已经商量好,当狼来捕食的时候,不必逃到自己的兔穴,可以临时躲到其它兔子的兔穴。经过不断实践,兔子们发现,当所有兔子到达兔穴的步数总和最小时,兔子们是最安全的,尽管有的兔子可能要跑较多的步数。给出n只兔子吃草的位置,和n个兔穴的位置,请你求出所有兔子到达兔穴的最小步数和。
因版权问题,题目已隐藏。如有需要请私下联系root或nodgd。
Input Format
第一行为一个正整数n,为兔子的数目和兔穴的数目。
接下来n行,每行两个正整数,描述一只兔子吃草的位置坐标。
接下来n行,每行两个正整数,描述一个兔穴的位置坐标。
数据保证每只兔子可以到的任意的兔穴。
Output Format
输出仅一行,为一个整数,即所有兔子到达兔穴的最小步数和。
Sample Input
样例输入1
2
4 1
3 2
1 3
3 4
样例输入2
1
203 235
481 171
样例输入3
2
1 2
4 7
3 2
7 3
Sample Output
样例输出1
4
样例输出2
6
样例输出3
3
Hint
样例解释:
第一只兔子从(4,1)跳到(3,1)再跳到(3,4),到达其中一个兔穴;
第二只兔子从(3,2)跳到(1,2)再跳到(1,3),到达另一个兔穴。
步数为2+2=4,不难验证最优性。
数据范围:
坐标不超过1018。
设最远的一对兔子兔穴相距K步。
测试点1-2:n=1,K<=60
测试点3-4:n=1,K<=2*109
测试点5-7:n=200,K<=60
测试点8-10:n=200,K<=2*109
测试点11-15:n=10000,K<=60
测试点16-20:n=10000,K<=2*109
update2020.10.08
在保留原来20组数据的情况下,新增20组数据,新增的数据满足如下限制条件:
对于10%的数据, \(n=1\) , \(K\leq 14\) ;
对于30%的数据, \(n=1\) , \(K\leq 500\) ;
对于50%的数据, \(n\leq 200\) , \(K\leq 500\) ;
对于70%的数据, \(n\leq 10^4\) , \(K\leq 500\) ;
对于100%的数据, \(n\leq 5\times 10^4\) , \(K\) 无限制,坐标 \(\leq 10^{18}\) ,保证任意一个火车都可以到达任意一个乘客的位置,保证答案在long long范围内。