#include<stdio.h>
#include<math.h>
#include<algorithm>
using namespace std;
struct loaction
{
double x;
double y;
}s[101];
int cmp(loaction a,loaction b)
{
double c,d;
c=a.x/sqrt(a.x*a.x+a.y*a.y);
d=b.x/sqrt(b.x*b.x+b.y*b.y);
return acos(c)<acos(d);
}
int main ()
{
int m,i;
while(scanf("%d",&m)!=EOF&&m>=0)
{
for(i=0;i<101;i++)
{
s[i].x=0;s[i].y=0;
}
for(i=0;i<m;i++)
{
scanf("%lf%lf",&s[i].x,&s[i].y);
}
sort(s,s+m,cmp);
for(i=0;i<m-1;i++)
{
printf("%.1lf %.1lf ",s[i].x,s[i].y);
}
printf("%.1lf %.1lf\n",s[m-1].x,s[m-1].y);
}
return 0;
}
点击打开链接