aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFlorian Fischer <florian.fischer@muhq.space>2024-10-20 10:50:43 +0200
committerFlorian Fischer <florian.fischer@muhq.space>2024-10-20 10:50:43 +0200
commit8d03d76d4b6d382909f52c1167ad697ff2707813 (patch)
tree8ad8d20dc05a1dec0a0263d9a8730492d786f844
parentb76ce463d9a459d4fd312d0438b1b8092ef9e50f (diff)
downloadunterricht-8d03d76d4b6d382909f52c1167ad697ff2707813.tar.gz
unterricht-8d03d76d4b6d382909f52c1167ad697ff2707813.zip
improve dijkstra lesson material
-rw-r--r--Info/11/NTG/1/Dijkstra/AB_Dijkstra.docxbin0 -> 264405 bytes
-rw-r--r--Info/11/NTG/1/Dijkstra/AB_Dijkstra_Lsg.docxbin0 -> 743097 bytes
-rw-r--r--Info/11/NTG/1/Dijkstra/CountPaths/.gitignore1
-rw-r--r--Info/11/NTG/1/Dijkstra/CountPaths/CountPaths.java89
-rw-r--r--Info/11/NTG/1/Dijkstra/CountPaths/Makefile7
-rw-r--r--Info/11/NTG/1/Dijkstra/img/studyflix-qrcode.pngbin0 -> 817 bytes
-rw-r--r--Info/11/NTG/1/Dijkstra/img/tum_disjktra_done.pngbin87858 -> 266548 bytes
-rw-r--r--Info/11/NTG/1/Dijkstra/links.txt4
-rw-r--r--Info/11/NTG/1/Dijkstra/pseudocode.tex12
-rw-r--r--Info/11/NTG/1/Dijkstra/slides.md92
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
new file mode 100644
index 00000000..a68df67a
--- /dev/null
+++ b/Info/11/NTG/1/Dijkstra/AB_Dijkstra.docx
Binary files differ
diff --git a/Info/11/NTG/1/Dijkstra/AB_Dijkstra_Lsg.docx b/Info/11/NTG/1/Dijkstra/AB_Dijkstra_Lsg.docx
new file mode 100644
index 00000000..4ee172c8
--- /dev/null
+++ b/Info/11/NTG/1/Dijkstra/AB_Dijkstra_Lsg.docx
Binary files differ
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
new file mode 100644
index 00000000..5cea87f3
--- /dev/null
+++ b/Info/11/NTG/1/Dijkstra/img/studyflix-qrcode.png
Binary files differ
diff --git a/Info/11/NTG/1/Dijkstra/img/tum_disjktra_done.png b/Info/11/NTG/1/Dijkstra/img/tum_disjktra_done.png
index 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
Binary files differ
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!