社区讨论
关于极角排序
灌水区参与者 2已保存回复 9
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 9 条
- 当前快照
- 1 份
- 快照标识符
- @lo7jv7lb
- 此快照首次捕获于
- 2023/10/27 03:00 2 年前
- 此快照最后确认于
- 2023/10/27 03:00 2 年前
CPP
struct point
{
double x,y;
};
double cross(double x1,double y1,double x2,double y2)//计算叉积
{
return (x1*y2-x2*y1);
}
double compare(point k,point a,point b)
{
return cross((a.x-k.x),(a.y-k.y),(b.x-k.x),(b.y-k.y));
}
bool cmp(point a,point b) //叉积大于零是顺时针,否则是逆时针
{
point c;//选定的极坐标系的原点
c.x = 0;
c.y = 0;
if(compare(c,a,b)==0)
return a.x<b.x;
else return compare(c,a,b)>0;
}
回复
共 9 条回复,欢迎继续交流。
正在加载回复...