手机版

ACM常用算法(16)

发布时间:2021-06-06   来源:未知    
字号:

ACM常考算法

double dtheta,theta1,theta2; theta1 = atan2(y1,x1); theta2 = atan2(y2,x2); dtheta = theta2 - theta1; while (dtheta > PI) dtheta -= PI*2; while (dtheta < -PI) dtheta += PI*2; return(dtheta); }

4.两点距离(2D、3D)

语法:result=distance_2d(float x1,float x2,float y1,float y2); 参数:

x/y/z1

各点的x、y、z坐标 ~2:

返回

两点之间的距离 值: 注意: 源程序:

需要 math.h

float distance_2d(float x1,float x2,float y1,float y2) {

return(sqrt((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2))); }

float distance_3d(float x1,float x2,float y1,float y2,float z1,float z2) {

return(sqrt((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2)+(z1-z2)*(z1-z2))); }

5.射向法判断点是否在多边形内部

语法:result=insidepolygon(Point *polygon,int N,Point p); 参数:

*polyg

多边形顶点数组 on:

N: 多边形顶点个数 p: 被判断点

返回

0:点在多边形内部;1:点在多边形外部 值: 注意:

若p点在多边形顶点或者边上,返回值不确定,需另行判断

ACM常用算法(16).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
×
二维码
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)