Obliczanie liczby trójkątów na zdjęciu jest zadaniem często stosowanym w testach mózgu. Otrzymujesz zdjęcie, które zawiera kształty składające się z trójkątów. Następnie musisz znaleźć wszystkie możliwe trójkąty na obrazku.
Zadanie
Otrzymasz listę wierszy w wybranym formacie. Następnie musisz wygenerować listę znalezionych w nim trójkątów
Wejście
Otrzymujesz listę linii, każda podana przez cztery współrzędne całkowite (np. x1 y1 x2 y2
). Możesz wybrać format wejściowy, o ile jest on wyraźnie udokumentowany. Przykłady:
0 4 8 1
0 4 9 5
8 1 9 5
2 8 0 4
9 5 2 8
[[0, 4, 8, 1], [0, 4, 9, 5], [8, 1, 9, 5], [2, 8, 0, 4], [9, 5, 2, 8]]
Oto te same dane wejściowe co obraz:
Kolejny z przecięciami (tylko w jednym formacie, aby zaoszczędzić miejsce):
[[2, 1, 5, 0], [2, 1, 2, 7], [5, 0, 6, 6], [5, 0, 2, 7], [6, 6, 2, 1], [2, 7, 6, 6]]
Wynik
Musisz wydrukować listę wszystkich trójkątów, każdy podany przez sześć współrzędnych zmiennoprzecinkowych (np. x1 y1 x2 y2 x3 y3
), Na obrazie określonym przez dane wejściowe. Nie mogą to być liczby całkowite, ponieważ linie mogą się przecinać w dowolnym punkcie. Możesz wybrać format wyjściowy, o ile jest on wyraźnie udokumentowany. Przykładowe dane wyjściowe dla przykładowych danych wejściowych powyżej:
0 4 8 1 9 5
0 4 9 5 2 8
[[0, 4, 8, 3, 9, 5], [0, 4, 9, 5, 2, 8]]
[[2, 1, 5, 0, 2, 7], [2, 1, 5, 0, 6, 6], [5, 0, 6, 6, 2, 7], [2, 1, 6, 6, 2, 7], [2, 1, 5, 0, 3.674, 3.093], [5, 0, 6, 6, 3.674, 3.093], [6, 6, 2, 7, 3.674, 3.093], [2, 7, 2, 1, 3.674, 3.093]]
Możesz to założyć
nie ma przypadków krawędzi, w których linia przecina przecięcie, ale żadnych linii, takich jak
[[0, 9, 1, 8], [1, 8, 2, 9], [2, 9, 3, 8], [3, 8, 4, 9], [4, 9, 0, 9]]
nie ma kątów powyżej 179 stopni
[[0, 0, 0, 1], [0, 1, 0, 2], [0, 2, 0, 0]]
Zasady
- Możesz używać dowolnego języka.
- Nie wolno używać żadnych zasobów zewnętrznych.
- Obowiązują standardowe luki .
Punktacja
To jest golf golfowy , więc wygrywa najkrótsza odpowiedź w bajtach .
[0,0],[1,0],[2,0],[1,2]
„Czworokąt” z jednym kątem 180 stopni. Brak trójkątów lub 1 trójkąt?
[0,9],[1,8],[2,9],[3,8],[4,9]
to tak naprawdę W z linią poprowadzoną na górze. Czy to nie trójkąty czy 2 trójkąty?