J'y ai réfléchi cette nuit, on peut faire encore mieux. Premièrement parce qu'il n'est pas vraiment nécessaire de considérer les intersections de droites, mais seulement celles des segments qui délimitent les zones de chaque capteur (enfin, les segments juste un point plus loin en fait).
Mais surtout parce que le point cherché est soit :
dans un coin du terrain et sur un segment ;
sur un bord du terrain et à l'intersection de deux segments ;
n'importe où ailleurs, mais à l'intersection de quatre segments.
Bref, in n'a plus qu'à tester si un coin ne se trouverait pas sur un segment, et sinon, si on construit la liste des intersections, on n'a plus qu'à chercher si on ne trouve pas dedans :
[^] # Re: Une solution brillante
Posté par 🚲 Tanguy Ortolo (site web personnel) . En réponse au message Avent du Code jour 15. Évalué à 4. Dernière modification le 16 décembre 2022 à 09:14.
J'y ai réfléchi cette nuit, on peut faire encore mieux. Premièrement parce qu'il n'est pas vraiment nécessaire de considérer les intersections de droites, mais seulement celles des segments qui délimitent les zones de chaque capteur (enfin, les segments juste un point plus loin en fait).
Mais surtout parce que le point cherché est soit :
Bref, in n'a plus qu'à tester si un coin ne se trouverait pas sur un segment, et sinon, si on construit la liste des intersections, on n'a plus qu'à chercher si on ne trouve pas dedans :