Ich versuche das folgende Abdeckungsproblem zu lösen.
Es gibt Sender mit einer Reichweite von 1 km und Empfänger. Entscheiden Sie in dass alle Empfänger von einem Sender abgedeckt werden. Alle Empfänger und Sender werden durch ihre und Koordinaten dargestellt.
Die fortschrittlichste Lösung, mit der ich kommen kann, ist . Sortieren Sie für jeden Empfänger alle Sender nach der Entfernung zu diesem aktuellen Empfänger. Nehmen Sie dann den Sender mit der kürzesten Entfernung und diese kürzeste Entfernung sollte innerhalb von 0,5 km liegen.
Aber der naive Ansatz sieht in der Zeitkomplexität viel besser aus . Berechnen Sie einfach den gesamten Abstand zwischen allen Paaren von Sender und Empfänger.
Ich bin nicht sicher, ob ich bei diesem Problem Algorithmen für die Bereichssuche anwenden kann. Zum Beispiel erlauben uns kd-Bäume, solche Bereiche zu finden, aber ich habe nie ein Beispiel gesehen und bin mir nicht sicher, ob es eine Art von Bereichssuche für Kreise gibt.
Die gegebene Komplexität setzt voraus, dass die Lösung der Sortierung ähnlich sein sollte.