Imaginons que nous ayons un plan avec certains points dessus. Nous avons également un cercle de rayon donné.
J'ai besoin d'un algorithme qui détermine la position du cercle de manière à ce qu'il couvre le plus grand nombre possible de points. Bien sûr, il existe de nombreuses positions de ce type, et l'algorithme doit donc renvoyer l'une d'entre elles.
La précision n'est pas importante et l'algorithme peut faire de petites erreurs.
Voici un exemple d'image :
Entrée :
int n
(n<=50) - nombre de points ;
float x[n]
et float y[n]
- avec les coordonnées X et Y des points ;
float r
- le rayon du cercle.
Sortie :
float cx
et float cy
- coordonnées du centre du cercle
La vitesse fulgurante de l'algorithme n'est pas requise, mais il ne doit pas être trop lent (car je connais quelques solutions lentes pour cette situation).
Le code C++ est préférable, mais pas obligatoire.
0 votes
Vous n'avez aucune restriction sur la distribution des points ?
0 votes
Cela semble être une grande codegolf
0 votes
@bobobobo Je ne pense vraiment pas. Assez ennuyeux, pas de conditions de victoire exactes... Mais n'hésitez pas à créer une telle question.