Hier werden alle für das Teilnehmendenfeld gestellten und beantworteten Fragen gesammelt:
- Ist die Nutzung von Libraries erlaubt?
- Grundsätzlich ja.
- Für die zentrale Auswertung müssen ggf. Voraussetzungen geschaffen werden, so dass die genutzte Library dann allen Teams zur Verfügung steht.
- Grenzen stellen Aspekte wie Sicherheit, Größe der Bibliotheken, Fairness (z.B. Ressourcenbedarf) dar.
- Zwischenauswertung
- Wie wird die Platzierung bestimmt?
- Zunächst wird die Anzahl der gelösten Tests gewertet. Teams, die dieselbe Anzahl gelöster Tests werden nach der Summe der Laufzeiten aufsteigen, beginnend mit der Geringsten, sortiert.
- Wie lange dauert die Aktualisierung der Zwischenergebnisse?
- Dies ist stark abhängig davon, wie lange die Programme für die Berechnung der Lösungen benötigen.
- Angestrebt wird ein Aktualisierungszyklus von max. 1h.
- Wie wird die Platzierung bestimmt?
- Auf welchem Branch läuft die Auswertung?
- Die Auswertung erfolgt auf dem main-Branch.
- Müssen alle möglichen Lösungen für eine Problemstellung angegeben werden?
- Nein, es reicht eine korrekte Lösung bzw. die Aussage das keine Lösung existiert.
- Werden die Tests nacheinander durchlaufen, auch wenn ein Test fehlschlägt oder werden alle Tests durchlaufen?
- Ja, es werden alle Tests durchlaufen. Jeder Test läuft dabei maximal zwei Minuten.
- Warum ändert sich die Zeit eines anderen Teams, wenn ich einen Push mache?
- Ein Push löst, wenn er lokal erfolgreich getestet wurde, einen zentralen Lauf aus. Der zentrale Lauf nutzt dabei von jedem Team, den aktuellen Stand des main-Branch. Es gibt jetzt mehrere Szenarios: Ein Team hat eine lokal nicht erfolgreich getestete Lösung, die nun für einen zentralen Lauf ausgewertet wird, und so zu einer Änderung der Zeit führt. Weitere Szenarios können durch Pushs auf Development-Branches, schnell aufeinander folgende Pushs verschiedener Teams oder durch Lösungen deren Laufzeit variiert entstehen.
- Bei einem Fall mit der Dimension 1x2x3, darf die Lösung in einer anderen Form z.B. 3x2x1 zurückgegeben werden?
- Ja, der Test-Algorithmus lässt dies zu.
- Wie sehen die Fälle aus, die im zentralen Lauf getestet werden?
- Ein Fall, wie aus den Ergebnissen zu Beginn abgeleitet werden konnte, hat keine Lösung und prüft, ob dieser Zustand korrekt erkannt wird.
- Ein weiterer Fall hat die Kantenlängen von 10, 10 und 2 Würfeln und bis zum jetzigen Zeitpunkt (01.03.2022) sind alle eingesandten Lösungen an dem Zwei-Minuten-Limit gescheitert.
- Wie viele Threads kann ein parallelisierter Algorithmus nutzen?
- Es werden vier Prozessorkernen für das Ausführen der Tests bereitgestellt. Die Anzahl an Threads sollte aber auch die Struktur des gewählten Algorithmus berücksichtigen.