环境:Dev-CPP(C++语言C++11标准)
#include<stdio.h> #include<math.h> int main(){ int n,x,y,a,b; scanf("%d %d %d",&n,&x,&y); if(n>=3&&n<=200){ int sum[n],i,d[n]; for(i=1;i<=n;i++){ scanf("%d%d",&a,&b); sum[i]=(a-x)*(a-x)+(b-y)*(b-y); } for(i=1;i<=n;i++){ d[i]=sum[i]; } int tmp=0,j; for(i = 2; i <= n; i++) { for(j = i; j > 1; j--) { if(sum[j] <= sum[j-1]) { tmp = sum[j]; sum[j] = sum[j-1]; sum[j-1] = tmp; } else { break; } }} int min1=sum[1]; int min2=sum[2]; int min3=sum[3]; int a1,a2; for(i=1;i<=n;i++){ if(min1==d[i]){ printf("%d\n",i); a1=i; break;} } for(i=1;i<=n;i++){ if(min2==d[i]&&i!=a1){ printf("%d\n",i); a2=i; break;} } for(i=1;i<=n;i++){ if(min3==d[i]&&i!=a1&&i!=a2){ printf("%d\n",i); break;} } } }