Kombinatorik Hallo Welt 2011 Philip Kranz 12. Juli 2011 Philip Kranz () Kombinatorik 12. Juli 2011 1 / 47
Inhalt 1 Einführung 2 Grundlagen Permutationen Variationen Kombinationen Binomialkoeffizient / Pascal sches Dreieck Zusammenfassung / Beispiel 3 Zahlenfolgen Fibonacci Catalan-Zahlen Stirling-Zahlen Euler-Zahlen Integer-Partitionen Zusammenfassung 4 Abschluss Philip Kranz () Kombinatorik 12. Juli 2011 2 / 47
Einführung Kombinatorik? Teilgebiet der diskreten Mathematik Behandelt im Wesentlichen das Zählen von Elementen in Mengen Genauer: abzählende Kombinatorik Philip Kranz () Kombinatorik 12. Juli 2011 3 / 47
Permutationen Grundlagen Permutationen Definition Jede mögliche Anordnung von n Elementen, in der alle Elemente verwendet werden, heißt Permutation dieser Elemente. Das bedeutet: Eine Permutation ist eine bijektive Abbildung einer Menge auf sich selbst. Matrixschreibweise Zykelschreibweise Permutationsmatrix 0 0 0 1 0 0 ( 1 2 3 4 5 ) 6 4 2 6 1 3 5 (1, 4)(2)(3, 6, 5) 0 1 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 Philip Kranz () Kombinatorik 12. Juli 2011 4 / 47
Grundlagen Permutationen Permutationen ohne Wiederholung Frage Wie viele Möglichkeiten habe ich, meine 5 Kinder in einer Reihe aufzustellen? Philip Kranz () Kombinatorik 12. Juli 2011 5 / 47
Grundlagen Permutationen Permutationen ohne Wiederholung Frage Wie viele Möglichkeiten habe ich, meine 5 Kinder in einer Reihe aufzustellen? Die erste Position können wir aus allen Kindern wählen, für die zweite Position haben wir noch 4 Kinder zur Auswahl usw. Damit kommen wir am Ende auf Möglichkeiten. 5 4 3 2 1 = 5! Philip Kranz () Kombinatorik 12. Juli 2011 5 / 47
Grundlagen Permutationen Permutationen von gruppenweise ununterscheidbaren Objekten Frage Wie viele Möglichkeiten habe ich, 80 Studenten auf 4 Räume zu verteilen, so dass in jedem Raum 20 Studenten sitzen? Philip Kranz () Kombinatorik 12. Juli 2011 6 / 47
Grundlagen Permutationen Permutationen von gruppenweise ununterscheidbaren Objekten Frage Wie viele Möglichkeiten habe ich, 80 Studenten auf 4 Räume zu verteilen, so dass in jedem Raum 20 Studenten sitzen? Es gibt 80! Möglichkeiten, 80 Studenten der Reihe nach auszuwählen Wir eliminieren alle äquivalenten Möglichkeiten, in denen die gleichen Studenten in anderer Reihenfolge in einem Raum sind Pro Raum können die Studenten auf 20! verschiedene Arten permutiert werden Damit ergeben sich Möglichkeiten. 80! 20! 20! 20! 20! Philip Kranz () Kombinatorik 12. Juli 2011 6 / 47
Grundlagen Variationen Variationen Definition Eine Variation ist eine Permutation einer Teilmenge einer gegebenen Menge. Dies ist wieder eine bijektive Abbildung, diesmal allerdings von der Teilmenge auf sich selbst. Philip Kranz () Kombinatorik 12. Juli 2011 7 / 47
Grundlagen Variation ohne Wiederholung Variationen Frage Wie viele Möglichkeiten habe ich, 3 meiner 5 Kinder in einer Reihe aufzustellen? Philip Kranz () Kombinatorik 12. Juli 2011 8 / 47
Grundlagen Variationen Variation ohne Wiederholung Frage Wie viele Möglichkeiten habe ich, 3 meiner 5 Kinder in einer Reihe aufzustellen? Gleiche Überlegung, wie bei allen 5 Kindern Wir hören einfach nach dem 3. Kind auf Es ergeben sich: Möglichkeiten. 5 4 3 = 5 i = i=3 5! (5 3)! Philip Kranz () Kombinatorik 12. Juli 2011 8 / 47
Grundlagen Variation mit Wiederholung Variationen Frage Wie viele Versuche brauche ich maximal, um ein fünfstelliges Fahrradschloss zu knacken? Philip Kranz () Kombinatorik 12. Juli 2011 9 / 47
Grundlagen Variationen Variation mit Wiederholung Frage Wie viele Versuche brauche ich maximal, um ein fünfstelliges Fahrradschloss zu knacken? Wir können fünfmal wählen Für jede Ziffer haben wir die freie Auswahl zwischen 0 und 9 Wir erhalten Möglichkeiten. 10 10 10 10 10 = 10 5 Philip Kranz () Kombinatorik 12. Juli 2011 9 / 47
Grundlagen Kombinationen Kombinationen Definition Eine Kombination ist eine Variation, bei der die Reihenfolge der Elemente nicht beachtet wird. Würden wir also aus einer Menge {a, b, c, d} Stichproben nehmen, so würden wir nicht zwischen {a, c} und {c, a} unterscheiden. Die Frage ist also: Auf wie viele verschiedene Arten können wir von einer bestimmten Menge eine Teilmenge der Größe n bilden. Philip Kranz () Kombinatorik 12. Juli 2011 10 / 47
Grundlagen Kombination ohne Wiederholung Kombinationen Frage Wie viele Möglichkeiten gibt es, 6 aus 49 Zahlen zu ziehen? Philip Kranz () Kombinatorik 12. Juli 2011 11 / 47
Grundlagen Kombination ohne Wiederholung Kombinationen Frage Wie viele Möglichkeiten gibt es, 6 aus 49 Zahlen zu ziehen? Würden wir die Reihenfolge beachten, wäre die Antwort 49! (49 6)! Philip Kranz () Kombinatorik 12. Juli 2011 11 / 47
Grundlagen Kombination ohne Wiederholung Kombinationen Frage Wie viele Möglichkeiten gibt es, 6 aus 49 Zahlen zu ziehen? Würden wir die Reihenfolge beachten, wäre die Antwort 49! (49 6)! Unsere 6 gewählten Elemente können auf 6! verschiedene Weisen permutiert sein. Nach Elimination dieser Permutationen ergeben sich: ( ) 49! 49 (49 6)!6! = 6 Möglichkeiten. Philip Kranz () Kombinatorik 12. Juli 2011 11 / 47
Grundlagen Kombination mit Wiederholung Kombinationen Frage Wenn ich aus einer (unendlich großen) Tüte mit 3 Farben Gummibärchen 5 Gummibärchen nehme, wie viele verschiedene Farbkombinationen kann ich erhalten? Philip Kranz () Kombinatorik 12. Juli 2011 12 / 47
Grundlagen Kombinationen Kombination mit Wiederholung Wir stellen uns eine Kombination als eine Folge von Nullen und Einsen vor, die die gezogenen Gummibärchen in drei Farbgruppen einteilt. Eine Null steht für ein Bärchen, eine Eins ist ein Trennzeichen zwischen den drei Farbgruppen. Beispiele 0001010 (Drei rote, ein gelbes, ein grünes) 0100100 (Ein rotes, zwei gelbe, zwei grüne) Philip Kranz () Kombinatorik 12. Juli 2011 13 / 47
Grundlagen Kombinationen Kombination mit Wiederholung Wir stellen uns eine Kombination als eine Folge von Nullen und Einsen vor, die die gezogenen Gummibärchen in drei Farbgruppen einteilt. Eine Null steht für ein Bärchen, eine Eins ist ein Trennzeichen zwischen den drei Farbgruppen. Beispiele 0001010 (Drei rote, ein gelbes, ein grünes) 0100100 (Ein rotes, zwei gelbe, zwei grüne) Damit haben wir das Problem auf eine Permutation von 7 Objekten, die teilweise ununterscheidbar sind zurückgeführt. Mögliche Permutationen von 5 Nullen und 2 Einsen sind: 7! 5! 2! = ( ) 7 = 21 5 Philip Kranz () Kombinatorik 12. Juli 2011 13 / 47
Grundlagen Kombination mit Wiederholung Kombinationen Da wir bei n verschiedenen Elementen und k Ziehungen immer genau k Nullen und n 1 Einsen brauchen, ergibt sich allgemein: (n + k 1)! (n 1)!k! ( ) n + k 1 = k Philip Kranz () Kombinatorik 12. Juli 2011 14 / 47
Grundlagen Binomialkoeffizient / Pascal sches Dreieck Binomialkoeffizient ( ) n (gelesen: k aus n ) heißt Binomialkoeffizient. k Direkte Berechnung mit n! k!(n k)! meistens ineffizient oder überlaufträchtig. Philip Kranz () Kombinatorik 12. Juli 2011 15 / 47
Binomialkoeffizient Grundlagen Binomialkoeffizient / Pascal sches Dreieck ( ) n (gelesen: k aus n ) heißt Binomialkoeffizient. k Direkte Berechnung mit n! k!(n k)! meistens ineffizient oder überlaufträchtig. Rekursionsformel: ( ) n = k ( n 1 k ) + ( ) n 1, k 1 ( ) n = n ( ) n = 1, 0 ( ) n = n 1 Philip Kranz () Kombinatorik 12. Juli 2011 15 / 47
Binomialkoeffizient Grundlagen Binomialkoeffizient / Pascal sches Dreieck ( ) n (gelesen: k aus n ) heißt Binomialkoeffizient. k Direkte Berechnung mit n! k!(n k)! meistens ineffizient oder überlaufträchtig. Rekursionsformel: ( ) n = k ( n 1 k ) + ( ) n 1, k 1 ( ) n = n ( ) n = 1, 0 ( ) n = n 1 Produktformel: n i=k i k! = k i=1 n k + i i Philip Kranz () Kombinatorik 12. Juli 2011 15 / 47
Grundlagen Berechnung Binomialkoeffizient Binomialkoeffizient / Pascal sches Dreieck Iterativ int binom ( int n, int k) { int result = 1; /* Ausnutzen der Symmetrie */ if (k > n - k) k = n - k; for ( int i = 1; i <= k; i ++) { result *= (n - k + i); result /= i; } return result ; } Philip Kranz () Kombinatorik 12. Juli 2011 16 / 47
Grundlagen Berechnung Binomialkoeffizient DP mit Rekursionsformel int binom ( int n, int k) { int dp[n +1][ k +1]; if (k > n) return 0; Binomialkoeffizient / Pascal sches Dreieck for ( int i = 0; i <= n; i ++) { dp[i ][0] = 1; dp[i][i] = 1; for ( int j = 1; j < i; j ++) dp[i][j] = dp[i -1][j -1] + dp[i -1][ j]; } } return dp[n][k]; Philip Kranz () Kombinatorik 12. Juli 2011 17 / 47
Pascal sches Dreieck Grundlagen Binomialkoeffizient / Pascal sches Dreieck DP-Version des Binomialkoeffizienten. n ( ) n ( ) n ( ) n ( ) n ( ) n ( ) n ( ) n n ( ) n 0 1 2 3 4 5 6 i=0 i 0 1 2 0 1 1 1 2 1 2 1 2 1 2 2 3 1 3 3 1 2 3 4 1 4 6 4 1 2 4 5 1 5 10 10 5 1 2 5 6 1 6 15 20 15 6 1 2 6 Die Summe der Elemente einer Zeile n ist immer 2 n. Dies entspricht der Mächtigkeit der Potenzmenge einer n-elementigen Menge. Philip Kranz () Kombinatorik 12. Juli 2011 18 / 47
Grundlagen Zusammenfassung / Beispiel Zusammenfassung Permutation/Variation/Kombination ohne Wiederholung mit Wiederholung Permutation n! n! n 1! n 2!... n i! n! Variation (n k)! n k ( ) ( ) n Kombination = n! n + k 1 k (n k)!k! k Philip Kranz () Kombinatorik 12. Juli 2011 19 / 47
Beispiel Grundlagen Zusammenfassung / Beispiel TopCoder Problem 10071 Wir spielen Lotto. Es werden m aus n Zahlen gezogen, ebenso wählen wir m aus n Zahlen. Wir gewinnen, wenn wir wenigstens k richtige Zahlen gewählt haben. Mit welcher Wahrscheinlichkeit gewinnen wir? Philip Kranz () Kombinatorik 12. Juli 2011 20 / 47
Beispiel Grundlagen Zusammenfassung / Beispiel Die Möglichkeiten, genau i Zahlen zu treffen, berechnen sich wie folgt: Philip Kranz () Kombinatorik 12. Juli 2011 21 / 47
Beispiel Grundlagen Zusammenfassung / Beispiel Die Möglichkeiten, genau i Zahlen zu treffen, ( berechnen ) sich wie folgt: n Möglichkeiten, m aus n Zahlen zu ziehen:. m Philip Kranz () Kombinatorik 12. Juli 2011 21 / 47
Beispiel Grundlagen Zusammenfassung / Beispiel Die Möglichkeiten, genau i Zahlen zu treffen, ( berechnen ) sich wie folgt: n Möglichkeiten, m aus n Zahlen zu ziehen:. m ( ) m Möglichkeiten, in diesen m Zahlen i richtige zu treffen:. i Philip Kranz () Kombinatorik 12. Juli 2011 21 / 47
Beispiel Grundlagen Zusammenfassung / Beispiel Die Möglichkeiten, genau i Zahlen zu treffen, ( berechnen ) sich wie folgt: n Möglichkeiten, m aus n Zahlen zu ziehen:. m ( ) m Möglichkeiten, in diesen m Zahlen i richtige zu treffen:. i ( ) n i Möglichkeiten, dass die restlichen Zahlen falsch sind: m i Philip Kranz () Kombinatorik 12. Juli 2011 21 / 47
Beispiel Grundlagen Zusammenfassung / Beispiel Die Möglichkeiten, genau i Zahlen zu treffen, ( berechnen ) sich wie folgt: n Möglichkeiten, m aus n Zahlen zu ziehen:. m ( ) m Möglichkeiten, in diesen m Zahlen i richtige zu treffen:. i ( ) n i Möglichkeiten, dass die restlichen Zahlen falsch sind: m i ( ) 2 n Es gibt genau Möglichkeiten, zweimal m aus n Zahlen zu ziehen. m Unsere Wahrscheinlichkeit ist also: ( ) ( ) ( ) n n m n i i=k m i m i ( ) 2 n m Philip Kranz () Kombinatorik 12. Juli 2011 21 / 47
Fibonacci-Zahlen Zahlenfolgen Fibonacci ICPC-Aufgabe Ein spezieller Morsecode besteht aus kurzen Tönen, die eine Zeiteinheit dauern und langen Tönen, die zwei Zeiteinheiten dauern. Wie viele verschiedene Nachrichten gibt es, die genau n Zeiteinheiten dauern? Philip Kranz () Kombinatorik 12. Juli 2011 22 / 47
Zahlenfolgen Fibonacci Fibonacci-Zahlen ICPC-Aufgabe Ein spezieller Morsecode besteht aus kurzen Tönen, die eine Zeiteinheit dauern und langen Tönen, die zwei Zeiteinheiten dauern. Wie viele verschiedene Nachrichten gibt es, die genau n Zeiteinheiten dauern? Gesucht ist eine Funktion f(n). Beginne mit den Basisfällen: f(0) = 0 f(1) = 1 f(2) = 2 Philip Kranz () Kombinatorik 12. Juli 2011 22 / 47
Zahlenfolgen Fibonacci Fibonacci-Zahlen Per Induktion gelangen wir zu f(n): Ein Code der Länge n lässt sich bilden, indem wir entweder einen kurzen Ton an irgendeinen Code der Länge n 1 oder einen langen Ton an irgendeinen Code der Länge n 2 anhängen. Philip Kranz () Kombinatorik 12. Juli 2011 23 / 47
Zahlenfolgen Fibonacci Fibonacci-Zahlen Per Induktion gelangen wir zu f(n): Ein Code der Länge n lässt sich bilden, indem wir entweder einen kurzen Ton an irgendeinen Code der Länge n 1 oder einen langen Ton an irgendeinen Code der Länge n 2 anhängen. Wir addieren die Möglichkeiten, die sich für beide Restcodes ergeben. Somit: f(n) = f(n 1) + f(n 2) Philip Kranz () Kombinatorik 12. Juli 2011 23 / 47
Fibonacci-Zahlen Zahlenfolgen Fibonacci Definition 0 n = 0 f n = 1 n = 1 f n 1 + f n 2 sonst f n = 0, 1, 1, 2, 3, 5, 8, 13, 21, 34 Philip Kranz () Kombinatorik 12. Juli 2011 24 / 47
Zahlenfolgen Fibonacci Berechnung der Fibonacci-Zahlen Entweder mit DP Oder per Fast Exponentiation von Matrizen: ( ) n ( ) 1 1 fn+1 f = n 1 0 f n f n 1 Näherungsformel: f n 1 5 φ n mit φ = 1 + 5 2 Korrektes Runden führt zum exakten Ergebnis. Philip Kranz () Kombinatorik 12. Juli 2011 25 / 47
Catalan-Zahlen Zahlenfolgen Catalan-Zahlen Frage Wie viele Möglichkeiten gibt es, gültige Klammerausdrücke (Dyck-Worte) mit genau n Klammerpaaren zu bauen? Gültige Ausdrücke sind z.b.: (())(), ()()(), ()((()())) Ungültige Ausdrücke sind z.b.: )()(, ())()), (((()) Philip Kranz () Kombinatorik 12. Juli 2011 26 / 47
Zahlenfolgen Catalan-Zahlen Catalan-Zahlen Gesucht: Eine Funktion C(n). Basisfälle: C(0) = 1 C(1) = 1 Philip Kranz () Kombinatorik 12. Juli 2011 27 / 47
Zahlenfolgen Catalan-Zahlen Catalan-Zahlen Gesucht: Eine Funktion C(n). Basisfälle: C(0) = 1 C(1) = 1 Ein gültiger Ausdruck ist immer von der Form (c 1 )c 2, wobei c 1 und c 2 wieder gültige Ausdrücke oder leer sind. Philip Kranz () Kombinatorik 12. Juli 2011 27 / 47
Catalan-Zahlen Zahlenfolgen Catalan-Zahlen Gesucht: Eine Funktion C(n). Basisfälle: C(0) = 1 C(1) = 1 Ein gültiger Ausdruck ist immer von der Form (c 1 )c 2, wobei c 1 und c 2 wieder gültige Ausdrücke oder leer sind. Genau n 1 Möglichkeiten, den Ausdruck derart aufzuteilen. Für jede Aufteilung ergeben sich unterschiedlich lange c 1 und c 2. Wenn wir für jede Platzierung die Möglichen Kombinationen von c 1 und c 2 aufsummieren, erhalten wir: n C(n + 1) = C(i) C(n i) C(n) heissen Catalan-Zahlen. i=0 Philip Kranz () Kombinatorik 12. Juli 2011 27 / 47
Catalan-Zahlen Zahlenfolgen Catalan-Zahlen C(n) = 1, 1, 2, 5, 14, 42, 132, 429, 1430, 4862,... Auch berechenbar mithilfe des Binomialkoeffizienten: C(n) = 1 ( ) 2n 1 + n n Philip Kranz () Kombinatorik 12. Juli 2011 28 / 47
Catalan-Zahlen Zahlenfolgen Catalan-Zahlen C(n) = 1, 1, 2, 5, 14, 42, 132, 429, 1430, 4862,... Auch berechenbar mithilfe des Binomialkoeffizienten: C(n) = 1 ( ) 2n 1 + n n Die Catalan-Zahlen sind vielseitig interpretierbar. Beispiele: Die Anzahl der wohlgeformten Klammerausdrücke mit n Klammerpaaren. Die Anzahl der Möglichkeiten, in einem rechteckigen Raster von der linken unteren in die rechte obere Ecke zu kommen, ohne die Diagonale zu überschreiten. Die Anzahl aller möglichen Binärbäume mit n inneren Knoten, bzw. aller Binärbäume mit n + 1 Blattknoten. Philip Kranz () Kombinatorik 12. Juli 2011 28 / 47
Catalan-Zahlen Zahlenfolgen Catalan-Zahlen Anzahl möglicher Binärbäume: Jeder innere Knoten ist ein Klammerpaar. Philip Kranz () Kombinatorik 12. Juli 2011 29 / 47
Stirling-Zahlen 2. Art Zahlenfolgen Stirling-Zahlen Frage Auf wie viele verschiedene Arten kann man eine n-elementige Menge in k nichtleere disjunkte Teilmengen teilen? Beispiel: Wie viele Möglichkeiten gibt es, 5 Gäste auf 2 Gästezimmer zu verteilen, wobei beide Zimmer nicht unterscheidbar sind? Philip Kranz () Kombinatorik 12. Juli 2011 30 / 47
Zahlenfolgen Stirling-Zahlen Stirling-Zahlen 2. Art Gesucht ist eine Funktion S(n, k). Basisfälle sind: S(n, 0) = 0, n > 0 S(n, n) = 1 Philip Kranz () Kombinatorik 12. Juli 2011 31 / 47
Zahlenfolgen Stirling-Zahlen Stirling-Zahlen 2. Art Gesucht ist eine Funktion S(n, k). Basisfälle sind: S(n, 0) = 0, n > 0 S(n, n) = 1 Wir denken uns S(n, k) als die Summe der Aufteilungen, die die Teilmenge {n} beinhalten (Gruppe A) und denen, bei denen n in einer Menge zusammen mit anderen Werten vorkommt (Gruppe B). Philip Kranz () Kombinatorik 12. Juli 2011 31 / 47
Zahlenfolgen Stirling-Zahlen Stirling-Zahlen 2. Art Gesucht ist eine Funktion S(n, k). Basisfälle sind: S(n, 0) = 0, n > 0 S(n, n) = 1 Wir denken uns S(n, k) als die Summe der Aufteilungen, die die Teilmenge {n} beinhalten (Gruppe A) und denen, bei denen n in einer Menge zusammen mit anderen Werten vorkommt (Gruppe B). Beispiel S(4, 3) Aufteilungen mit {n}: {4}, {1, 2}, {3}; {4}, {1}, {2, 3}; {4}, {1, 3}, {2}; Aufteilungen ohne {n}: {1}, {2}, {3, 4}; {1}, {3}, {2, 4}; {2}, {3}, {1, 4} Philip Kranz () Kombinatorik 12. Juli 2011 31 / 47
Stirling-Zahlen 2. Art Zahlenfolgen Stirling-Zahlen Zählen von Gruppe A Da das Element {n} fest vorgegeben ist, ist diese Gruppe genauso groß, wie die Aufteilungen der restlichen n 1 Elemente in k 1 Teilmengen, also S(n 1, k 1). Philip Kranz () Kombinatorik 12. Juli 2011 32 / 47
Stirling-Zahlen 2. Art Zahlenfolgen Stirling-Zahlen Zählen von Gruppe A Da das Element {n} fest vorgegeben ist, ist diese Gruppe genauso groß, wie die Aufteilungen der restlichen n 1 Elemente in k 1 Teilmengen, also S(n 1, k 1). Zählen von Gruppe B Wir betrachten alle Aufteilungen von n 1 Elementen in k Teilmengen. Offensichtlich können wir Gruppe B bilden, indem wir in jeder möglichen Aufteilung jeweils in jede Teilmenge ein n einfügen. Da wir bei jeder Aufteilung k Teilmengen zur Auswahl haben, ergibt sich für Gruppe B: k S(n 1, k). Philip Kranz () Kombinatorik 12. Juli 2011 32 / 47
Stirling-Zahlen 2. Art Zahlenfolgen Stirling-Zahlen Zählen von Gruppe A Da das Element {n} fest vorgegeben ist, ist diese Gruppe genauso groß, wie die Aufteilungen der restlichen n 1 Elemente in k 1 Teilmengen, also S(n 1, k 1). Zählen von Gruppe B Wir betrachten alle Aufteilungen von n 1 Elementen in k Teilmengen. Offensichtlich können wir Gruppe B bilden, indem wir in jeder möglichen Aufteilung jeweils in jede Teilmenge ein n einfügen. Da wir bei jeder Aufteilung k Teilmengen zur Auswahl haben, ergibt sich für Gruppe B: k S(n 1, k). Daraus ergibt sich die Rekursionsformel: { } n S(n, k) = = k k { n 1 k } + { } n 1 k 1 Philip Kranz () Kombinatorik 12. Juli 2011 32 / 47
Stirling-Zahlen 2. Art Zahlenfolgen Stirling-Zahlen n { } n { } n { } n { } n { } n { } n { } n 0 1 2 3 4 5 6 0 1 1 0 1 2 0 1 1 3 0 1 3 1 4 0 1 7 6 1 5 0 1 15 25 10 1 6 0 1 31 90 65 15 1 Die Berechnung ist auch möglich mithilfe des Binomialkoeffizienten: { } n = 1 k k! k ( ) ( 1) i k (k i) n i i=0 Philip Kranz () Kombinatorik 12. Juli 2011 33 / 47
Stirling-Zahlen 1. Art Zahlenfolgen Stirling-Zahlen Frage Auf wie viele verschiedene Arten kann man eine n-elementige Menge in k Zyklen aufteilen? Ein Zyklus ist eine Menge, bei der wir die Reihenfolge beachten, wobei z.b. [1, 2, 3], [2, 3, 1] und [3, 1, 2] äquivalent sind. Philip Kranz () Kombinatorik 12. Juli 2011 34 / 47
Zahlenfolgen Stirling-Zahlen Stirling-Zahlen 1. Art Überlegung ähnlich zu den Stirling-Zahlen 2. Art. Gesucht ist eine Funktion S 1 (n, k) mit den Basisfällen: S 1 (n, n) = 1 S 1 (n, 0) = 0, n > 0 Wir bilden wieder zwei Gruppen: Eine, bei der [n] als einzelner Zyklus vorkommt und eine, bei der n Teil eines größeren Zyklus ist. Beispiel S 1 (4, 2) Gruppe A: [4], [1, 2, 3]; [4], [1, 3, 2] Gruppe B: [1, 2], [3, 4]; [1, 3], [2, 4]; [1, 4], [2, 3]; [1], [2, 3, 4]; [1], [2, 4, 3]; [2], [1, 3, 4]; [2], [1, 4, 3]; [3], [1, 2, 4]; [3], [1, 4, 2]; Philip Kranz () Kombinatorik 12. Juli 2011 35 / 47
Stirling-Zahlen 1. Art Zahlenfolgen Stirling-Zahlen Zählen von Gruppe A Analog zu den Stirling-Zahlen 2. Art können wir Gruppe A sehen als alle Aufteilungen mit n 1 Elementen und k 1 Zyklen, wobei wir einfach den Zyklus [n] hinzufügen. Also wieder: S 1 (n 1, k 1). Philip Kranz () Kombinatorik 12. Juli 2011 36 / 47
Stirling-Zahlen 1. Art Zahlenfolgen Stirling-Zahlen Zählen von Gruppe A Analog zu den Stirling-Zahlen 2. Art können wir Gruppe A sehen als alle Aufteilungen mit n 1 Elementen und k 1 Zyklen, wobei wir einfach den Zyklus [n] hinzufügen. Also wieder: S 1 (n 1, k 1). Zählen von Gruppe B Wir betrachten wieder die Aufteilungen mit n 1 Elementen und k Zyklen. Wir können nun bei jeder Aufteilung vor (oder nach) jedem der n 1 Elemente unser n einfügen, um unterschiedliche Zyklen zu erzeugen. Da wir genau n 1 Stellen haben, an denen wir das n einfügen können, ergibt sich: (n 1) S 1 (n 1, k) Es ergibt sich die Rekursion: [ ] n S 1 (n, k) = = (n 1)S k 1 (n 1, k) + S 1 (n 1, k 1) Philip Kranz () Kombinatorik 12. Juli 2011 36 / 47
Stirling-Zahlen 1. Art Zahlenfolgen Stirling-Zahlen n [ ] n [ ] n [ ] n [ ] n [ ] n [ ] n [ ] n 0 1 2 3 4 5 6 0 1 1 0 1 2 0 1 1 3 0 2 3 1 4 0 6 11 6 1 5 0 24 50 35 10 1 6 0 120 274 225 85 15 1 Philip Kranz () Kombinatorik 12. Juli 2011 37 / 47
Euler-Zahlen Zahlenfolgen Euler-Zahlen ICPC-Sommercontest 2008 (Building Mountains) Wir sollen Levels für ein Sidescroll-Jump n Run entwickeln. Wir erhalten n Bausteine für das Terrain, die alle unterschiedlich hoch sind. Wie viele Möglichkeiten haben wir, eine Welt zu bauen, die genau k Steigungen besitzt? Beispiel: Bei drei Bausteinen und einer Steigung gibt es 4 Möglichkeiten: Philip Kranz () Kombinatorik 12. Juli 2011 38 / 47
Euler-Zahlen Zahlenfolgen Euler-Zahlen ICPC-Sommercontest 2008 (Building Mountains) Wir sollen Levels für ein Sidescroll-Jump n Run entwickeln. Wir erhalten n Bausteine für das Terrain, die alle unterschiedlich hoch sind. Wie viele Möglichkeiten haben wir, eine Welt zu bauen, die genau k Steigungen besitzt? Beispiel: Bei drei Bausteinen und einer Steigung gibt es 4 Möglichkeiten: Darstellung als Zahlenfolgen: [1, 3, 2], [2, 3, 1], [2, 1, 3], [3, 1, 2] Philip Kranz () Kombinatorik 12. Juli 2011 38 / 47
Zahlenfolgen Euler-Zahlen Euler-Zahlen Gesucht: Funktion E(n, k) = Anzahl aller möglichen Zahlenfolgen der Zahlen 1..n mit genau k aufsteigenden Teilfolgen. Basisfälle: E(n, 0) = 1 E(n, n) = 0, n > 0 E(n, n 1) = 1 Philip Kranz () Kombinatorik 12. Juli 2011 39 / 47
Zahlenfolgen Euler-Zahlen Euler-Zahlen Gesucht: Funktion E(n, k) = Anzahl aller möglichen Zahlenfolgen der Zahlen 1..n mit genau k aufsteigenden Teilfolgen. Basisfälle: E(n, 0) = 1 E(n, n) = 0, n > 0 E(n, n 1) = 1 Aufteilung in 2 Gruppen: In Gruppe A steht das Element n am Anfang. In Gruppe B steht es irgendwo anders. Philip Kranz () Kombinatorik 12. Juli 2011 39 / 47
Euler-Zahlen Zahlenfolgen Euler-Zahlen Zählen von Gruppe A Da das größte Element am Anfang steht, hat jede Folge dieser Gruppe genau so viele Steigungen wie dieselbe Folge ohne das Element n. Daher ist die Zahl der Folgen in dieser Gruppe E(n 1, k). Philip Kranz () Kombinatorik 12. Juli 2011 40 / 47
Euler-Zahlen Zahlenfolgen Euler-Zahlen Zählen von Gruppe A Da das größte Element am Anfang steht, hat jede Folge dieser Gruppe genau so viele Steigungen wie dieselbe Folge ohne das Element n. Daher ist die Zahl der Folgen in dieser Gruppe E(n 1, k). Zählen von Gruppe B Wir betrachten die Folgen mit n 1 Elementen und k 1 Steigungen. Wir müssen nun n in jede Folge so einsetzen, dass sich eine zusätzliche Steigung ergibt, also entweder an einem Gefälle oder ganz am Ende. Die Anzahl der Gefälle ist n k, somit ergibt sich (n k + 1) E(n 1, k 1). Zusammengesetzt: E(n, k) = n k = n 1 1 + (n k + 1) n k k 1 Philip Kranz () Kombinatorik 12. Juli 2011 40 / 47
Zahlenfolgen Euler-Zahlen Euler-Zahlen n n 0 n 1 n 2 n 3 n 4 n 5 n 6 0 1 1 1 0 2 1 1 0 3 1 4 1 0 4 1 11 11 1 0 5 1 26 66 26 1 0 6 1 57 302 302 57 1 0 Berechnung auch mithilfe des Binomialkoeffizienten: n k ( ) k = ( 1) i n (k i + 1) n k i=0 Philip Kranz () Kombinatorik 12. Juli 2011 41 / 47
Zahlenfolgen Integer-Partitionen Integer-Partitionen Definition Die Menge aller Summen von natürlichen Zahlen, die n ergeben, nennt man Integer-Partitionen von n. Siehe auch das Münzproblem. Philip Kranz () Kombinatorik 12. Juli 2011 42 / 47
Zahlenfolgen Integer-Partitionen Integer-Partitionen Gesucht ist eine Funktion f(n, k), die alle möglichen Zerlegungen in Zahlen k liefert. Dann ergeben sich die Basisfälle f(0, k) = 0 f(n, 0) = 0 f(n, 1) = 1 Philip Kranz () Kombinatorik 12. Juli 2011 43 / 47
Zahlenfolgen Integer-Partitionen Integer-Partitionen Gesucht ist eine Funktion f(n, k), die alle möglichen Zerlegungen in Zahlen k liefert. Dann ergeben sich die Basisfälle f(0, k) = 0 f(n, 0) = 0 f(n, 1) = 1 Für f(n, k) addieren wir nun die Anzahl der Möglichkeiten, wenn k Teil der Partition ist und wenn nicht. Somit ergibt sich: f(n, k) = f(n k, k) + f(n, k 1) Philip Kranz () Kombinatorik 12. Juli 2011 43 / 47
Zahlenfolgen Integer-Partitionen Integer-Partitionen Gesucht ist eine Funktion f(n, k), die alle möglichen Zerlegungen in Zahlen k liefert. Dann ergeben sich die Basisfälle f(0, k) = 0 f(n, 0) = 0 f(n, 1) = 1 Für f(n, k) addieren wir nun die Anzahl der Möglichkeiten, wenn k Teil der Partition ist und wenn nicht. Somit ergibt sich: f(n, k) = f(n k, k) + f(n, k 1) Die Zahl aller möglichen Integer-Partitionen einer Zahl n erhalten wir mit: f(n, n) Philip Kranz () Kombinatorik 12. Juli 2011 43 / 47
Zahlenfolgen Zusammenfassung Zahlenfolgen Zusammenfassung Folge Fibonacci Catalan Stirling 2. Art Stirling 1. Art Euler Interpretation Triangulationen eines n + 2-Ecks Zahl möglicher Klammer ausdrücke Zahl möglicher Binärbäume... Aufteilungen einer Menge in Teilmengen Aufteilungen einer Menge in Zyklen Permutationen einer Menge mit k aufsteigenden Teilfolgen Philip Kranz () Kombinatorik 12. Juli 2011 44 / 47
Zahlenfolgen Zusammenfassung Online Encyclopedia Of Integer Sequences http://oeis.org Beispiele: Catalan-Zahlen: A000108 Stirling-Zahlen 2. Art: A008277... Philip Kranz () Kombinatorik 12. Juli 2011 45 / 47
Abschluss Zusammenfassung Kombinatorik behandelt das Zählen der Elemente von Mengen. Wir unterscheiden Permutationen, Variationen und Kombinationen. Lösungsansätze für kombinatorische Probleme: Mischung von Permutation/Kombination/Variation oder Induktion/Teile-Und-Herrsche Es gibt ein mannigfaltiges Ökosystem von Zahlenfolgen, die jeweils bestimmte kombinatorische Eigenschaften haben. Je mehr dieser Folgen wir kennen, um so mehr kombinatorische Probleme können wir lösen. Philip Kranz () Kombinatorik 12. Juli 2011 46 / 47
Abschluss Literatur http://apps.topcoder.com/forums/?module=thread &threadid=685114 http://www.topcoder.com/tc?module=static &d1=tutorials&d2=combinatorics R. L. Graham, D. E. Knuth, O. Patashnik: Concrete Mathematics, Addison Wesley Hallo Welt 2004, Kombinatorik, Tillmann Spiegelhauer Hallo Welt 2010, Kombinatorik, Mathhias Bayerlein Wikipedia Philip Kranz () Kombinatorik 12. Juli 2011 47 / 47