题解 AT184 【2点間距離の最大値 ( The longest distance )】

ShineEternal

2019-09-28 08:38:50

Solution

## description: 给定n个点,求出两点之间最短距离 ## solution: 观察数据范围,发现$n\leq100$,所以之间$O(n^2)$暴力即可。 这里要注意不要丢失精度,于是就全开double,最后输出6位就行了 ```cpp #include<cstdio> #include<iostream> #include<cmath> using namespace std; double sqr(double x) { return x*x; } double x[1005],y[1005]; int main() { double n; double ans=0; scanf("%lf",&n); for(int i=1;i<=n;i++) { scanf("%lf%lf",&x[i],&y[i]); } for(int i=1;i<=n;i++) { for(int j=1;j<=n;j++) { ans=max(ans,sqrt(sqr(x[i]-x[j])+sqr(y[i]-y[j]))); } } printf("%.6lf\n",ans); return 0; } ```