90pts求调
查看原帖
90pts求调
1360496
NullPointerExpection楼主2024/7/12 08:50
#include <bits/stdc++.h>
using namespace std;

int x0, y3, x2, y2, n, x[(int)1e5], y[(int)1e5], ans = INT_MAX;
struct Info {
	int dis1, dis2, id;
	bool operator < (Info a) {
		return dis1 < a.dis1;
	}
} dd[(int)1e5];

int main() {
	cin >> x0 >> y3 >> x2 >> y2 >> n;
	for(int i = 0; i < n; i++) {
		cin >> x[i] >> y[i];
		dd[i].dis1 = pow(x[i] - x0, 2) + pow(y[i] - y3, 2);
		dd[i].id = i;
	}
	sort(dd, dd + n);
	for(int i = n - 1; i >= 0; i--) {
		int temp = pow(x[dd[i].id] - x2, 2) + pow(y[dd[i].id] - y2, 2);
		dd[i].dis2 = max(temp, dd[i + 1].dis2);
	}
	for(int i = 0; i < n; i++)
		ans = min(ans, dd[i].dis1 + dd[i + 1].dis2);
	cout << ans;
	return 0;
} 
2024/7/12 08:50
加载中...