HDU 2108 Shape of HDU(判断拐点)
2013-08-20 23:00
381 查看
http://acm.hdu.edu.cn/showproblem.php?pid=2108
这题是用矢量相乘来判断拐向的,三个点a,b,c,矢量叉乘(b-a)×(c-b)为正就左拐,否则右拐,出现右拐就是凹的
View Code
这题是用矢量相乘来判断拐向的,三个点a,b,c,矢量叉乘(b-a)×(c-b)为正就左拐,否则右拐,出现右拐就是凹的
#include<stdio.h> #include<math.h> int x[1000000],y[1000000],n; int con(int a,int b,int c) { int s,x1,x2,y1,y2; x1=x[b]-x[a]; y1=y[b]-y[a]; x2=x[c]-x[b]; y2=y[c]-y[b]; s=x1*y2-y1*x2; return s>0; } int main() { int i,flag; while(scanf("%d",&n),n) { flag=0; for(i=0;i<n;i++) { scanf("%d%d",&x[i],&y[i]); if(i>1) if(con(i-2,i-1,i)==0)flag=1; } if(con(i-2,i-1,0)==0||con(i-1,0,1)==0)flag=1; if(flag)printf("concave\n"); else printf("convex\n"); } return 0; }
View Code
相关文章推荐
- ACM--多边形凹凸判断--HDOJ 2108--Shape of HDU
- hdu acm 2108 Shape of HDU(判断凸多边形)
- hdu 2108 Shape of HDU(判断多边形是否为凸多边形)
- hdu 2108 Shape of HDU 判断是否为凸多边形
- HDU 2108 Shape of HDU(判断给定的图形是否是凸多边形)
- 计算几何——HDUOJ 2108 - Shape of HDU(判断凹凸)
- hdu 2108 Shape of HDU(判断多边形是凸凹边形)
- HDU-2108--Shape of HDU---利用叉积判断凹凸多边形
- HDU 2108 Shape of HDU 判断多边形凹凸
- HDU 2108 Shape of HDU 判断凸包
- hdu 2108 Shape of HDU【判断多边形是否是凸多边形模板】
- hdu 2108 Shape of HDU【判断多边形是否是凸多边形模板】
- HDU 2108 Shape of HDU(判断凸凹变形 叉积)
- HDU 2108 Shape of HDU (判断是不是凸多边形 叉乘)
- hdu 2108 Shape of HDU【判断多边形是否是凸多边形模板】
- hdu-2108-Shape of HDU(凸凹多边形的判定)
- HDU 2108 Shape of HDU(凸包判定)
- HDU 2108 Shape of HDU(凸包)
- hdu 2108 Shape of HDU 计算几何(向量的叉积)
- HDU 2108 Shape of HDU(叉积)