Maison> base de données> tutoriel mysql> le corps du texte

如何理解xyz的判断点在凸包内模板

坏嘻嘻
Libérer: 2018-09-15 09:44:50
original
3482 Les gens l'ont consulté

本篇文章给大家带来的内容是关于如何理解xyz的判断点在凸包内模板,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

int n,m,tot; struct point { double x,y; }p[100000],a[100000],ss; bool cmp(point A,point B) { if(A.x!=B.x) return A.x1&&cross(p[tot-1]-p[tot-2],a[i]-p[tot-2])<=0)tot--; p[tot++]=a[i]; } int k=tot; for(int i=n-1;i>0;i--) { while(tot>k&&cross(p[tot-1]-p[tot-2],a[i]-p[tot-2])<=0)tot--; p[tot++]=a[i]; } if(n>1)tot--; } bool check(point A) { int l=1,r=tot-2,mid; while(l<=r) { mid=(l+r)>>1; double a1=cross(p[mid]-p[0],A-p[0]); double a2=cross(p[mid+1]-p[0],A-p[0]); if(a1>=0&&a2<=0) { if(cross(p[mid+1]-p[mid],A-p[mid])>=0)return true; return false; } else if(a1<0) { r=mid-1; } else { l=mid+1; } } return false; }
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!