0

Nachfolgend ist die Problemstellung.Finden Sie die minimale Fläche Parallelogramm umschließt alle Dreiecke

  1. Sie haben k Anzahl von gleichseitigen Dreiecken gegeben worden ist (Es gibt eine obere Kappe auf k ist, lässt k=<15 sagen). Die Dreiecke können sich überlappen.

  2. Jetzt müssen Sie ein Parallelogramm finden, das alle Dreiecke einschließt und die minimale Fläche hat. Es wird angegeben, dass zwei gegenüberliegende Kanten der vier Kanten parallel zu entweder X Achsen oder Y Achsen sind (das ist Ihre Wahl). Mein Ansatz

:

Lasst uns sagen, zwei von ihnen sind parallel zu Y Achse. Der Punkt ganz links und der Punkt ganz rechts der Dreiecke liegen dann an zwei gegenüberliegenden Kanten des Parallelogramms. Jetzt zeichne ich zwei gerade Linien, die durch diese Punkte verlaufen und parallel zur Y Achse sind.

So habe ich zwei Kanten gefunden ist nicht so schwer. Jetzt bin ich stecken geblieben und weiß nicht, wie man andere zwei findet. Ich dachte viel nach, aber da ich es nicht herausbekommen habe, poste ich es hier. Jede Hilfe wird geschätzt !!!!!!!

+1

Bitte posten Sie Ihren Code. Worte allein reichen nicht aus, um zu verstehen, was hier vor sich geht. – Malphrush

+0

Zeichnen Sie es auf Papier, um die Schritte zu visualisieren, und übersetzen Sie diese Schritte in Code. Probieren Sie mehrere verschiedene Beispiele auf Papier aus. Poste deinen Code, wenn Probleme auftreten. –

+0

Mit dem beschriebenen Problem scheint es keine Möglichkeit zu geben, die Tatsache auszunutzen, dass die Punkte an den Ecken gleichseitiger Dreiecke liegen. Ist es möglich, dass eine weitere Einschränkung fehlt? – SirRaffleBuffle

Antwort

2

Erstellen Sie convex hull um alle Dreiecke Vertices.

Dann rotating calipers verwenden, um ein Paar von parallelen Linien mit dem kleinsten vertikalen Abstand zwischen ihnen zu bekommen (Parallelogramm Bereich von Höhe definiert ist (hier horizontal) - bereits fixiert ist, und durch vertikale Basislänge - wählen Mindest)

Verwandte Themen