P1158 导弹拦截
70分
#include<bits/stdc++.h>
using namespace std;
long long maxn1=0,maxn2=0,cost=0;
int main(){
long long n;
long long x,y,x1,y1,x2,y2;
cin>>x1>>y1>>x2>>y2;
cin>>n;
for(int i=1;i<=n;i++){
cin>>x>>y;
long long a=pow(x-x1,2)+pow(y-y1,2);
long long b=pow(x-x2,2)+pow(y-y2,2);
if(a<=maxn1||b<=maxn2) continue;
if(a<b){
maxn1=a;
}
if(b<a){
maxn2=b;
}
if(a==b){
if(a+maxn2<maxn1+b){
maxn1=a;
}
else{
maxn2=b;
}
}
}
// cout<<cost;
cout<<maxn1+maxn2;
return 0;
}