Berechnen Sie anhand einer Triangulation der Oberfläche eines Polyeders p
dessen Euler-Poincaré-Charakteristik χ(p) = V-E+F
, wobei V
die Anzahl der Eckpunkte, E
die Anzahl der Kanten und F
die Anzahl der Flächen ist.
Einzelheiten
Die Eckpunkte werden als aufgelistet 1,2,...,V
. Die Triangulation wird als Liste angegeben, wobei jeder Eintrag eine Liste der Eckpunkte einer Fläche im oder gegen den Uhrzeigersinn ist.
Trotz des Namens kann die Triangulation auch Gesichter mit mehr als drei Seiten enthalten. Es kann angenommen werden, dass die Flächen einfach verbunden sind, was bedeutet, dass die Grenze jeder Fläche unter Verwendung einer geschlossenen, sich nicht selbst schneidenden Schleife gezeichnet werden kann.
Beispiele
Tetraeder : Dieser Tetraeder ist konvex und hat χ = 2
. Eine mögliche Triangulation ist
[[1,2,3], [1,3,4], [1,2,4], [2,3,4]]
Würfel : Dieser Würfel ist konvex und hat χ = 2
. Eine mögliche Triangulation ist
[[1,2,3,4], [1,4,8,5], [1,2,6,5], [2,3,7,6], [4,3,7,8], [5,6,7,8]]
Donut : Diese Donut- / Toroidform hat χ = 0
. Eine mögliche Triangulation ist
[[1,2,5,4], [2,5,6,3], [1,3,6,4], [1,2,7,9], [2,3,8,7], [1,9,8,3], [4,9,8,6], [4,5,7,9], [5,7,8,6]]
Doppelter Donut : Dieser doppelte Donut sollte haben χ = -2
. Es wird konstruiert, indem zwei Kopien des obigen Donuts verwendet werden und die Seiten [1,2,5,4]
des ersten mit der Seite [1,3,6,4]
des zweiten identifiziert werden .
[[2,5,6,3], [1,3,6,4], [1,2,7,9], [2,3,8,7], [1,9,8,3], [4,9,8,6], [4,5,7,9], [5,7,8,6], [1,10,11,4], [10,11,5,2], [1,10,12,14], [10,2,13,12], [1,14,13,2], [4,14,13,5], [4,11,12,14], [11,12,13,5]]
(Beispiele, die mit diesem Haskell-Programm überprüft wurden .)