```
#include <stdio.h>
#include <algorithm>
using namespace std;
struct dia
{
int x,y,j1,j2;
}arr[100005];
bool cmp(dia a,dia b)
{
return a.j1 > b.j1;
}
int main()
{
int x_1,y_1,x_2,y_2,n,a,b;
scanf("%d %d %d %d %d",&x_1,&y_1,&x_2,&y_2,&n);
for(int i = 1; i <= n; i++)
{
scanf("%d %d",&arr[i].x,&arr[i].y);
arr[i].j1 = (arr[i].x - x_1) * (arr[i].x - x_1) + (arr[i].y - y_1) * (arr[i].y - y_1);
arr[i].j2 = (arr[i].x - x_2) * (arr[i].x - x_2) + (arr[i].y - y_2) * (arr[i].y - y_2);
}
sort(arr + 1,arr + 1 + n,cmp);
int ans = arr[1].j1,r1 = 0,r2 = 0;
for(int i = 2; i <= n; i++)
{
r1 = arr[i].j1;
r2 = max(r2,arr[i - 1].j2);
ans = min(r1 + r2,ans);
}
printf("%d",ans);
return 0;
}
by Perfect_Youth @ 2023-07-20 11:35:59
@[Taro2020](/user/401504)
by Perfect_Youth @ 2023-07-20 11:36:37