hypot 函数的妙用,但是得注意精度。
#include <iostream>
#include <cmath>
using namespace std;
using ld=long double;
const int N=1010;
int x[N],y[N];
int main(void)
{
ios::sync_with_stdio(false);
cin.tie(0);
ld ans=0;
int n,i,j,idx1=1,idx2=1;
cin>>n;
for(i=1;i<=n;++i)
cin>>x[i]>>y[i];
for(i=1;i<=n;++i)
for(j=i+1;j<=n;++j)
if(hypotl(x[i]-x[j],y[i]-y[j])>ans)
{
ans=hypotl(x[i]-x[j],y[i]-y[j]);
idx1=i;
idx2=j;
}
cout<<x[idx1]<<' '<<y[idx1]<<' '<<x[idx2]<<' '<<y[idx2];
return 0;
}

京公网安备 11010502036488号