题目描述
小鱼寒假百无聊赖,在纸上随意画了几个点和一个圆心,现在他想画一个圆,能够把所有的点都围在圆内。
你能帮他计算最小的圆的半径大小吗?为了方便,你只需要给出半径的平方。
输入描述
第一行包含两个整数,用空格隔开,表示圆心的坐标
第二行一个整数n(n<100),表示n个点
接下来n行,每行两个整数,表示点的xy坐标
输出描述
一行一个整数,表示最小的半径的平方
输入样例
0 0
2
1 2
-1 0
输出样例
5
//参考答案
#include <iostream>
using namespace std;
struct point {
int x;
int y;
} node[110];
int main() {
cin >> node[0].x >> node[0].y;
int n;
cin >> n;
for (int i = 1; i <= n; ++i) {
cin >> node[i].x >> node[i].y;
}
int dis = 0;
for (int i = 1; i <= n; ++i) {
int now = (node[i].x - node[0].x) * (node[i].x - node[0].x) + (node[i].y - node[0].y) * (node[i].y - node[0].y);
if (now > dis) dis = now;
}
cout << dis;
return 0;
}