diff options
Diffstat (limited to 'Info')
| -rw-r--r-- | Info/11/NTG/1/Dijkstra/AB_Dijkstra.docx | bin | 0 -> 264405 bytes | |||
| -rw-r--r-- | Info/11/NTG/1/Dijkstra/AB_Dijkstra_Lsg.docx | bin | 0 -> 743097 bytes | |||
| -rw-r--r-- | Info/11/NTG/1/Dijkstra/CountPaths/.gitignore | 1 | ||||
| -rw-r--r-- | Info/11/NTG/1/Dijkstra/CountPaths/CountPaths.java | 89 | ||||
| -rw-r--r-- | Info/11/NTG/1/Dijkstra/CountPaths/Makefile | 7 | ||||
| -rw-r--r-- | Info/11/NTG/1/Dijkstra/img/studyflix-qrcode.png | bin | 0 -> 817 bytes | |||
| -rw-r--r-- | Info/11/NTG/1/Dijkstra/img/tum_disjktra_done.png | bin | 87858 -> 266548 bytes | |||
| -rw-r--r-- | Info/11/NTG/1/Dijkstra/links.txt | 4 | ||||
| -rw-r--r-- | Info/11/NTG/1/Dijkstra/pseudocode.tex | 12 | ||||
| -rw-r--r-- | Info/11/NTG/1/Dijkstra/slides.md | 92 |
10 files changed, 162 insertions, 43 deletions
diff --git a/Info/11/NTG/1/Dijkstra/AB_Dijkstra.docx b/Info/11/NTG/1/Dijkstra/AB_Dijkstra.docx Binary files differnew file mode 100644 index 00000000..a68df67a --- /dev/null +++ b/Info/11/NTG/1/Dijkstra/AB_Dijkstra.docx diff --git a/Info/11/NTG/1/Dijkstra/AB_Dijkstra_Lsg.docx b/Info/11/NTG/1/Dijkstra/AB_Dijkstra_Lsg.docx Binary files differnew file mode 100644 index 00000000..4ee172c8 --- /dev/null +++ b/Info/11/NTG/1/Dijkstra/AB_Dijkstra_Lsg.docx diff --git a/Info/11/NTG/1/Dijkstra/CountPaths/.gitignore b/Info/11/NTG/1/Dijkstra/CountPaths/.gitignore new file mode 100644 index 00000000..6b468b62 --- /dev/null +++ b/Info/11/NTG/1/Dijkstra/CountPaths/.gitignore @@ -0,0 +1 @@ +*.class diff --git a/Info/11/NTG/1/Dijkstra/CountPaths/CountPaths.java b/Info/11/NTG/1/Dijkstra/CountPaths/CountPaths.java new file mode 100644 index 00000000..dd97d4a5 --- /dev/null +++ b/Info/11/NTG/1/Dijkstra/CountPaths/CountPaths.java @@ -0,0 +1,89 @@ +import java.util.*; +class CountPaths { + Stack connectionPath = new Stack(); + List<Stack> connectionPaths = new ArrayList<>(); + + static class Node { + int id; + List<Node> childs; + + Node(int id) { + this.id = id; + childs = new ArrayList<>(); + } + + boolean equals(Node other) { + return this.id == other.id; + } + + List<Node> nextNodes() { + return childs; + } + + Node addNext(Node next) { + childs.add(next); + return this; + } + } + + // See https://stackoverflow.com/questions/9535819/find-all-paths-between-two-graph-nodes + void findAllPaths(Node node, Node targetNode) { + for (Node nextNode : node.nextNodes()) { + if (nextNode.equals(targetNode)) { + Stack temp = new Stack(); + for (Object node1 : connectionPath) + temp.add(node1); + connectionPaths.add(temp); + } else if (!connectionPath.contains(nextNode)) { + connectionPath.push(nextNode); + findAllPaths(nextNode, targetNode); + connectionPath.pop(); + } + } + } + + public static void main(String argv[]) { + Node v1 = new Node(1); + Node v2 = new Node(2); + Node v3 = new Node(3); + Node v4 = new Node(4); + Node v5 = new Node(5); + Node v6 = new Node(6); + Node v7 = new Node(7); + Node v8 = new Node(8); + Node v9 = new Node(9); + Node v10 = new Node(10); + Node v11 = new Node(11); + Node v12 = new Node(12); + Node v13 = new Node(13); + Node v14 = new Node(14); + Node v15 = new Node(15); + Node v16 = new Node(16); + + v1.addNext(v2); + v2.addNext(v1).addNext(v4).addNext(v7); + v3.addNext(v4).addNext(v6); + v4.addNext(v2).addNext(v3).addNext(v9); + v5.addNext(v8).addNext(v14); + v6.addNext(v3).addNext(v4).addNext(v9).addNext(v10); + v7.addNext(v2).addNext(v9).addNext(v11); + v8.addNext(v5).addNext(v11).addNext(v15); + v9.addNext(v4).addNext(v6).addNext(v7).addNext(v10).addNext(v11); + v10.addNext(v6).addNext(v9).addNext(v11).addNext(v13); + v11.addNext(v7).addNext(v8).addNext(v9).addNext(v10).addNext(v12).addNext(v15); + v12.addNext(v11).addNext(v13); + v13.addNext(v10).addNext(v12).addNext(v16); + v14.addNext(v5).addNext(v8); + v15.addNext(v11).addNext(v16); + v16.addNext(v15).addNext(v13); + + + CountPaths p = new CountPaths(); + p.findAllPaths(v13, v2); + System.out.println(p.connectionPaths.size()); + + p = new CountPaths(); + p.findAllPaths(v13, v14); + System.out.println(p.connectionPaths.size()); + } +} diff --git a/Info/11/NTG/1/Dijkstra/CountPaths/Makefile b/Info/11/NTG/1/Dijkstra/CountPaths/Makefile new file mode 100644 index 00000000..3bc22a0b --- /dev/null +++ b/Info/11/NTG/1/Dijkstra/CountPaths/Makefile @@ -0,0 +1,7 @@ +.PHONY: run +run: CountPaths.class + java CountPaths + +CountPaths.class: CountPaths.java + javac $< + diff --git a/Info/11/NTG/1/Dijkstra/img/studyflix-qrcode.png b/Info/11/NTG/1/Dijkstra/img/studyflix-qrcode.png Binary files differnew file mode 100644 index 00000000..5cea87f3 --- /dev/null +++ b/Info/11/NTG/1/Dijkstra/img/studyflix-qrcode.png diff --git a/Info/11/NTG/1/Dijkstra/img/tum_disjktra_done.png b/Info/11/NTG/1/Dijkstra/img/tum_disjktra_done.png Binary files differindex b6e648e5..78fa5f13 100644 --- a/Info/11/NTG/1/Dijkstra/img/tum_disjktra_done.png +++ b/Info/11/NTG/1/Dijkstra/img/tum_disjktra_done.png diff --git a/Info/11/NTG/1/Dijkstra/links.txt b/Info/11/NTG/1/Dijkstra/links.txt new file mode 100644 index 00000000..afb09556 --- /dev/null +++ b/Info/11/NTG/1/Dijkstra/links.txt @@ -0,0 +1,4 @@ +https://algorithms.discrete.ma.tum.de/graph-algorithms/spp-dijkstra/index_de.html +https://schule.muhq.space/dijkstra +https://schule.muhq.space/dijkstra2 +https://algorithms.discrete.ma.tum.de/graph-algorithms/spp-dijkstra/index_de.html diff --git a/Info/11/NTG/1/Dijkstra/pseudocode.tex b/Info/11/NTG/1/Dijkstra/pseudocode.tex index a0206c82..360ddf86 100644 --- a/Info/11/NTG/1/Dijkstra/pseudocode.tex +++ b/Info/11/NTG/1/Dijkstra/pseudocode.tex @@ -23,8 +23,10 @@ \begin{document} \begin{pseudocode} -\textvtt{Weise allen Knoten die beiden Eigenschaften „Distanz“ und „Vorgänger“ zu. -Initialisiere die Distanz des Startknoten mit \revealtexton{0}{1}{2} und die aller anderen Knoten mit \revealtexton{$\infty$.}{2}{3}} +\textvtt{Weise allen Knoten die beiden Eigenschaften „Distanz“ und „Vorgänger“ zu.} +\vspace{0.1cm} + +\textvtt{Initialisiere die Distanz des Startknoten mit \revealtexton{0}{1}{2} und die der anderen Knoten mit \revealtexton{$\infty$.}{2}{3}} \vspace{0.1cm} \textvtt{Füge den Startknoten der Warteschlange hinzu.} @@ -34,16 +36,16 @@ Initialisiere die Distanz des Startknoten mit \revealtexton{0}{1}{2} und die all \vspace{0.1cm} \begin{adjustwidth}{0.5cm}{} -\textvtt{Wähle den Knoten mit \revealtexton{minimaler}{3}{4} (aufsummierter) Distanz als aktuellen Knoten und entferne ihn aus der Warteschlange.} +\textvtt{Nimm den Knoten mit \revealtexton{minimaler}{3}{4} (aufsummierter) Distanz aus der Warteschlange.} \vspace{0.1cm} \textvtt{Markiere diesen Knoten.} \vspace{0.1cm} -\textvtt{Berechne für alle \revealtexton{unmarkierten}{3}{4} Nachbarn die Gesamtdistanz des Pfades zum Startknoten ($\text{Kantengewicht} + \text{Distanz des aktuellen Knotens}$).} +\textvtt{Berechne für alle \revealtexton{unmarkierten}{4}{5} Nachbarn die Gesamtdistanz des Pfades zum Startknoten ($\text{Kantengewicht} + \text{Distanz des aktuellen Knotens}$).} \vspace{0.1cm} -\textvtt{Ist dieser Wert kleiner als die für diesen Nachbarn gespeicherte Distanz, aktualisiere sie und speichere den \revealtexton{aktuellen Knoten}{4}{5} als Vorgänger.} +\textvtt{Ist dieser Wert kleiner als die für diesen Nachbarn gespeicherte Distanz, aktualisiere sie und speichere den \revealtexton{aktuellen Knoten}{5}{6} als Vorgänger.} \end{adjustwidth} \end{pseudocode} \end{document} diff --git a/Info/11/NTG/1/Dijkstra/slides.md b/Info/11/NTG/1/Dijkstra/slides.md index 74b9c42d..79290779 100644 --- a/Info/11/NTG/1/Dijkstra/slides.md +++ b/Info/11/NTG/1/Dijkstra/slides.md @@ -29,7 +29,7 @@ Tablets bitte in der Tasche lassen! \vspace{0.2cm} -> Die Warteschlange der Breitensuche funktioniert genau wie ein Bücherstapel, der als \underline{letzte} eingefügte Knoten wird als \underline{erstes} wieder betrachtet. +> Die Warteschlange der Breitensuche funktioniert genau wie ein Bücherstapel, der als \underline{letzte} eingefügte Knoten wird als \underline{Erstes} wieder betrachtet. \begin{center} \begin{tikzpicture} @@ -59,7 +59,7 @@ Tablets bitte in der Tasche lassen! \pause -**Nein.** Die Warteschlange funktioniert genau wie an der Kasse, der \underline{erste} Knoten der eingefügt wird, wird auch als \underline{erster} wieder betrachtet. +**Nein.** Die Warteschlange funktioniert genau wie an der Kasse, der \underline{erste} Knoten der eingefügt wird, wird auch als \underline{Erster} wieder betrachtet. ## \faIcon{hands-helping} / \faIcon{chalkboard} Arbeitsauftrag: Knoten markieren \hfill{} 2/3 @@ -67,7 +67,7 @@ Tablets bitte in der Tasche lassen! \vspace{0.2cm} -> Algorithmen, bei denen wir Knoten oder Räume farbig markieren machen keinen Sinn! +> Algorithmen, bei denen wir Knoten oder Räume farbig markieren, machen keinen Sinn! > Sie sind für den Computer ungeeignet, da der Computer nichts farbig markieren kann. \pause @@ -75,11 +75,12 @@ Tablets bitte in der Tasche lassen! \vspace{0.1cm} **Quatsch!** Zwei Möglichkeiten: +::: {.columns} +:::: {.column width=60%} * Attribut der Klasse `Knoten` -* Array um die Markierungen zu speichern +* Array, um die Markierungen zu speichern -::: {.columns} -:::: {.column width=50%} +\vspace{0.2cm} \begin{center} \begin{tikzpicture} \begin{class}[]{Knoten}{0, 0} @@ -91,8 +92,8 @@ Tablets bitte in der Tasche lassen! \end{center} :::: -:::: {.column width=50%} -\resizebox{0.85\textwidth}{!}{ +:::: {.column width=45%} +\resizebox{\textwidth}{!}{ \begin{tikzpicture} \node at (-2.25, 4.5) {\textbf{Knotenfeld}}; \node at (.5, 4.5) {\textbf{Markierungen}}; @@ -141,7 +142,6 @@ Tablets bitte in der Tasche lassen! \node at (-0.25, 3.5) {\textbf{\textcolor{magenta}{0}}}; \end{tikzpicture} } -} :::: ::: @@ -211,7 +211,7 @@ Kantenanzahl $\neq$ Pfadlänge Alle Rohre in Manfreds Labyrinth sind wieder repariert und das Wasser abgepumpt. `\\[0.3cm]}\only<3->{`{=latex} Jetzt kann der Herbst kommen. -Manfred verbringt die kürzer werdenden Tage gerne mit einer Kanne Tee in seinem Heimkino. +Manfred verbringt die kürzer werdenden Tage gerne mit einer Kanne Tee in seinem Heimkino (Raum 13). `}`{=latex} :::: ::: @@ -227,7 +227,8 @@ Manfred hat zwei Toiletten in seinem Labyrinth: * Die Gästetoilette (Raum 14) \vspace{0.1cm} -Was ist der kürzeste Weg zu einer Toilette? + +> Was ist der kürzeste Weg zu einer Toilette? :::: :::: {.column width=50%} @@ -244,10 +245,10 @@ Was ist der kürzeste Weg zu einer Toilette? \node[text width=7cm] at (7, 0) {Manfred hat Gott sei dank die Wege in seinem Labyrinth vermessen.}; } \only<3-5>{ - \node[text width=7cm] at (7, -1.5) {Wie viele Möglichkeiten sind es wenn Manfred einfach alle Wege ausprobiert?}; + \node[text width=7cm] at (7, -1.5) {Wie viele Möglichkeiten sind es, wenn Manfred einfach alle Wege ausprobiert?}; } \only<4-5>{ - \node[text width=7cm] at (9, -2.5) {\boldred{257}}; + \node[text width=7cm] at (7, -2.5) {\boldred{257}}; } \only<1>{ \node[rotate=5, opacity=0] at (-1, -3) {\includegraphics[keepaspectratio, height=3cm]{img/Stoppuhr_digital_noBG_cutout.png}}; @@ -288,7 +289,7 @@ Was ist der kürzeste Weg zu einer Toilette? :::: ::: -## \faIcon{desktop}/\faIcon{hands-helping} Arbeitsauftrag: Untersucht den Dijkstra-Algortihmus \hfill 7 min +## \faIcon{desktop}/\faIcon{hands-helping} Arbeitsauftrag: Untersucht den Dijkstra-Algorithmus \hfill 7 min Lies die Erklärung zu jedem Schritt und führe den Algorithmus **schrittweise** aus. @@ -298,7 +299,7 @@ Lies die Erklärung zu jedem Schritt und führe den Algorithmus **schrittweise** \node[draw=red, thick, minimum width=4.5cm, minimum height=4.25cm] at (4.45, -0.25) {}; \end{tikzpicture} -## \faIcon{desktop}/\faIcon{hands-helping} Arbeitsauftrag: Eigenschaften des Dijkstra-Algortihmus \hfill 5 min {.standout} +## \faIcon{desktop}/\faIcon{hands-helping} Arbeitsauftrag: Eigenschaften des Dijkstra-Algorithmus \hfill 5 min {.standout} Teste dein Verständnis unter: @@ -306,15 +307,23 @@ Teste dein Verständnis unter: Fülle die Lücken und ergänze anschließend dein Arbeitsblatt. -## \faIcon{pencil-alt} Der Dijkstra-Algorithmus +## \faIcon{pencil-alt} Der Dijkstra-Algorithmus {.t} \begin{merke} -Mithilfe des Dijkstra-Algortihmus kann in einem gewichteten Graphen \revealtexton{der kürzeste Pfad}{1}{2} zwischen zwei Knoten bzw. von einem Startknoten ausgehend zu allen anderen Knoten ermittelt werde. +Mithilfe des Dijkstra-Algorithmus kann in einem gewichteten Graphen \revealtexton{der kürzeste Pfad}{1}{2} zwischen zwei Knoten bzw. von einem Startknoten ausgehend zu allen anderen Knoten ermittelt werde. Es wird immer die Kante verfolgt, welche die aktuell \revealtexton{kürzeste}{2}{3} Pfadlänge hat. \end{merke} -## \faIcon{desktop}/\faIcon{hands-helping} Arbeitsauftrag: Dijkstra-Algortihmus in Pseudocode \hfill 5 min {.standout} +\only<4->{ +Dazu wird eine Warteschlange verwendet, in der die Knoten nach \revealtexton{Pfadlänge}{4}{5} sortiert sind. +} + +\only<6->{ +Um den günstigsten Weg zwischen dem Startknoten und einem zweiten Knoten konstruieren zu können, wird bei jeder Aktualisierung der gespeicherten Distanz zusätzlich der \revealtexton{Vorgänger}{6}{7} gespeichert. +} + +## \faIcon{desktop}/\faIcon{hands-helping} Arbeitsauftrag: Dijkstra-Algorithmus in Pseudocode \hfill 5 min {.standout} Sortiere die Schritte des Dijktra-Algorithmus unter @@ -329,7 +338,7 @@ Sortiere die Schritte des Dijktra-Algorithmus unter ::: {.columns align=center} :::: {.column width=50%} -Bestimme mithilfe der Visualisierung des Dijkstra-Algortihmus und dem kompletten Graphen von Manfreds Labyrinth den kürzesten Weg für Manfred von seinem Heimkino (Raum 13/m) zu einer Toilette (Raum 2/b oder 14/n). +Bestimme mithilfe der Visualisierung des Dijkstra-Algorithmus und dem kompletten Graphen von Manfreds Labyrinth den kürzesten Weg für Manfred von seinem Heimkino (Raum 13/m) zu einer Toilette (Raum 2/b oder 14/n). :::: :::: {.column width=50%} @@ -339,20 +348,20 @@ Bestimme mithilfe der Visualisierung des Dijkstra-Algortihmus und dem kompletten :::: ::: -\faIcon{pencil-alt} Notiert dabei die Reihenfolge in der der Dijkstra-Algortihmus alle Räume besucht. +\faIcon{pencil-alt} Notiert dabei die Reihenfolge in der der Dijkstra-Algorithmus alle Räume besucht. ## \faIcon{pencil-alt} Lösung: Hilfe für Manfred {.t} ::: {.columns align=center} :::: {.column width=50%} ### Kürzester Weg zu einer Toilette -\only<2->{\textit{13/12/11/7/2}} mit Länge \only<3>{\textbf{19}} +\only<2->{\textit{13/12/11/7/2} mit Länge} \only<3>{\textbf{19}} :::: :::: {.column width=50%} \begin{tikzpicture}[a/.style={->, line width=2pt, red}] \node {\includegraphics[keepaspectratio, height=6cm]{img/manfreds_labyrinth_toilets.png}}; -\only<2>{ +\only<2->{ \draw[a] (2.55, -1.5) -- (1.8, -1); \draw[a] (1.2, -1) -- (-0.2, -0.8); \draw[a] (-0.5, -0.6) -- (-0.5, 0.2); @@ -411,14 +420,20 @@ Ort & Traunstein \newline (Tra) & Innsbruck \newline (Is) & Millstatt \newline ( \hline \only<6->{Ic} & & & & & \only<6->{\cellcolor{red!30}$277/$Is} & \only<6->{$434/$Ic} & & \only<6->{Tri, Tre, V} \\ \hline -\only<7->{Ic} & & & & \only<7->{\cellcolor{red!30}$327/$Is} & & & & \only<7->{Tre, V} \\ +\only<7->{Tri} & & & & \only<7->{\cellcolor{red!30}$327/$Is} & & & & \only<7->{Tre, V} \\ \hline -\only<8->{Ic} & & & & & & \only<8->{\cellcolor{red!30}$434/$Ic} & \only<8->{$472/$Tre} & \only<8->{V} \\ +\only<8->{Tre} & & & & & & \only<8->{\cellcolor{red!30}$434/$Ic} & \only<8->{$472/$Tre} & \only<8->{V} \\ \hline \only<9->{V} & & & & & & & \only<9->{\cellcolor{red!30}$472/$Tre} & \\ \hline \end{tabular} } +\begin{tikzpicture}[overlay, remember picture] +\only<12->{\draw[-Triangle, red, line width=1pt] (6.9, 0.2) -- (6.6, 0.4);} +\only<13->{\draw[-Triangle, red, line width=1pt] (6, 0.8) -- (5.5, 1.45);} +\only<14->{\draw[-Triangle, red, line width=1pt] (5, 1.75) -| (2.5, 2.3);} +\only<15->{\draw[-Triangle, red, line width=1pt] (2, 2.8) -- (1.8, 3);} +\end{tikzpicture} :::: :::: {.column width=30%} @@ -456,6 +471,11 @@ Ort & Traunstein \newline (Tra) & Innsbruck \newline (Is) & Millstatt \newline ( :::: ::: +\only<10->{Kürzester Weg:} \only<15->{\textbf{Tra/Is/Ic/Tre/V}} + +## {.standout} +Schöne Ferien :) + ## \faIcon{pencil-alt} Hausaufgabe {.t} Fülle die Tabelle zu dem Teilgraph von Manfreds Labyrinth auf deinem Arbeitsblatt. @@ -465,17 +485,16 @@ Fülle die Tabelle zu dem Teilgraph von Manfreds Labyrinth auf deinem Arbeitsbla \resizebox{\textwidth}{!}{ \renewcommand{\arraystretch}{1.5}% Spread rows out... \begin{tabular}{|c|c|c|c|c|c|c|c|c|c|c} -Raum & 2& 4 & 7 & 9 & 10 & 11 & 12 & 13 & WS \\ \hline -& {\small D|V} & {\small D|V} & {\small D|V} & {\small D|V} & {\small D|V} & {\small D|V} & {\small D|V} & {\small D|V} & \\[-0.2cm] \hline -\only<2->{- & $\infty|-$ & $\infty|-$ & $\infty|-$ & $\infty|-$ & $\infty|-$ & $\infty|-$ & $\infty|-$ & $0|-$ & 13} -\only<3->{\\\hline 13 & $\infty|-$ & $\infty|-$ & $\infty|-$ & $\infty|-$ & $5|9$ & $\infty|-$ & $\infty|-$ & \cellcolor{red!30}$12|9$ & 12, 10} -\only<4->{\\\hline 12 & $\infty|-$ & $\infty|-$ & $\infty|-$ & $10|10$ & $5|9$ & $9|12$ & \cellcolor{red!30} $4|9$ & \cellcolor{gray!30} $0|-$ & 10, 11} -\only<5->{\\\hline 10 & $\infty|-$ & $\infty|-$ & $\infty|-$ & $10|10$ & \cellcolor{red!30} $5|9$ & $9|12$ & \cellcolor{gray!30} $4|9$ & \cellcolor{gray!30} $0|-$ & 11, 9} -\only<6->{\\\hline 11 & $\infty|-$ & $\infty|-$ & $15|11$ & $10|10$ & \cellcolor{gray!30} $5|9$ & \cellcolor{red!30} $9|12$ & \cellcolor{gray!30} $4|9$ & \cellcolor{gray!30} $0|-$ & 9, 7} -\only<7->{\\\hline 9 & $\infty|-$ & $14|9$ & $15|11$ & \cellcolor{red!30} $10|10$ & \cellcolor{gray!30} $5|9$ & \cellcolor{gray!30} $9|12$ & \cellcolor{gray!30} $4|9$ & \cellcolor{gray!30} $0|-$ & 7, 4} -\only<9->{\\\hline 4 & $20|4$ & \cellcolor{red!30} $14|9$ & \cellcolor{gray!30} $15|11$ & \cellcolor{gray!30} $10|10$ & \cellcolor{gray!30} $5|9$ & \cellcolor{gray!30} $9|12$ & \cellcolor{gray!30} $4|9$ & \cellcolor{gray!30} $0|-$ & 4, 2} -\only<8->{\\\hline 7 & $19|7$ & \cellcolor{gray!30} $14|9$ & \cellcolor{red!30} $15|11$ & \cellcolor{gray!30} $10|10$ & \cellcolor{gray!30} $5|9$ & \cellcolor{gray!30} $9|12$ & \cellcolor{gray!30} $4|9$ & \cellcolor{gray!30} $0|-$ & 2 } -\only<10->{\\\hline 2 & \cellcolor{red!30} $19|7$ & \cellcolor{gray!30} $14|4$ & \cellcolor{gray!30} $15|11$ & \cellcolor{gray!30} $10|10$ & \cellcolor{gray!30} $5|9$ & \cellcolor{gray!30} $9|12$ & \cellcolor{gray!30} $4|9$ & \cellcolor{gray!30} $0|-$ & \\} +Raum & 2 & 4 & 7 & 9 & 10 & 11 & 12 & 13 & WS \\ \hline +& {\small D|V} & {\small D|V} & {\small D|V} & {\small D|V} & {\small D|V} & {\small D|V} & {\small D|V} & {\small D|V} & \\[-0.1cm] \hline \only<-1>{&&&&&&&&&}\only<2->{- & $\infty|-$ & $\infty|-$ & $\infty|-$ & $\infty|-$ & $\infty|-$ & $\infty|-$ & $\infty|-$ & $0|-$ & 13} \\\hline +\only<-2>{&&&&&&&&&}\only<3->{13 & $\infty|-$ & $\infty|-$ & $\infty|-$ & $\infty|-$ & $5|9$ & $\infty|-$ & $4|9$ & \cellcolor{red!30}$0|-$ & 12, 10} \\\hline +\only<-3>{&&&&&&&&&}\only<4->{12 & $\infty|-$ & $\infty|-$ & $\infty|-$ & $\infty|-$ & $5|9$ & $9|12$ & \cellcolor{red!30} $4|9$ & \cellcolor{gray!30} $0|-$ & 10, 11} \\\hline +\only<-4>{&&&&&&&&&}\only<5->{10 & $\infty|-$ & $\infty|-$ & $\infty|-$ & $10|10$ & \cellcolor{red!30} $5|9$ & $9|12$ & \cellcolor{gray!30} $4|9$ & \cellcolor{gray!30} $0|-$ & 11, 9} \\\hline +\only<-5>{&&&&&&&&&}\only<6->{11 & $\infty|-$ & $\infty|-$ & $15|11$ & $10|10$ & \cellcolor{gray!30} $5|9$ & \cellcolor{red!30} $9|12$ & \cellcolor{gray!30} $4|9$ & \cellcolor{gray!30} $0|-$ & 9, 7} \\\hline +\only<-6>{&&&&&&&&&}\only<7->{9 & $\infty|-$ & $14|9$ & $15|11$ & \cellcolor{red!30} $10|10$ & \cellcolor{gray!30} $5|9$ & \cellcolor{gray!30} $9|12$ & \cellcolor{gray!30} $4|9$ & \cellcolor{gray!30} $0|-$ & 4, 7} \\\hline +\only<-7>{\phantom{4} & \phantom{$20|4$} & \phantom{$14|9$} & \phantom{$15|11$} & \phantom{$10|10$} & \phantom{$5|9$} & \phantom{$9|12$} & \phantom{$4|9$} & \phantom{$0|-$} & \phantom{7, 2}}\only<8->{4 & $20|4$ & \cellcolor{red!30} $14|9$ & $15|11$ & \cellcolor{gray!30} $10|10$ & \cellcolor{gray!30} $5|9$ & \cellcolor{gray!30} $9|12$ & \cellcolor{gray!30} $4|9$ & \cellcolor{gray!30} $0|-$ & 7, 2} \\\hline +\only<-8>{&&&&&&&&&}\only<9->{7 & $19|7$ & \cellcolor{gray!30} $14|9$ & \cellcolor{red!30} $15|11$ & \cellcolor{gray!30} $10|10$ & \cellcolor{gray!30} $5|9$ & \cellcolor{gray!30} $9|12$ & \cellcolor{gray!30} $4|9$ & \cellcolor{gray!30} $0|-$ & 2 } \\\hline +\only<-9>{&&&&&&&&&}\only<10->{2 & \cellcolor{red!30} $19|7$ & \cellcolor{gray!30} $14|9$ & \cellcolor{gray!30} $15|11$ & \cellcolor{gray!30} $10|10$ & \cellcolor{gray!30} $5|9$ & \cellcolor{gray!30} $9|12$ & \cellcolor{gray!30} $4|9$ & \cellcolor{gray!30} $0|-$ &} \\ \end{tabular} } :::: @@ -519,6 +538,3 @@ Raum & 2& 4 & 7 & 9 & 10 & 11 & 12 & 13 & WS \\ \hline } :::: ::: - -## {.standout} -Schöne Ferien! |
