Die folgenden Teilnehmer haben sich für die zweite Runde qualifiziert:
| Rank | Participant | Points (max: 50) |
|---|---|---|
| 1. | Lazar Todorovic | 50 |
| 2. | Luzi Sennhauser | 48.5 |
| 3. | Nikola Djokic | 45.5 |
| 4. | Johannes Wüthrich | 42 |
| 5. | André Rieser | 35 |
| 6. | Peter Müller | 33 |
| 6. | Stefan Lippuner | 33 |
| 8. | Marco Keller | 32.5 |
| 9. | Cyril Frei | 32 |
| 10. | Johannes Kapfhammer | 30 |
| 11. | Alexander Kayed | 21 |
| 11. | Silvan Laube | 21 |
| 11. | Ulrich Brodowsky | 21 |
| 14. | Peter Güttinger | 20 |
| 15. | Janis Peyer | 19 |
| 15. | Timon Stampfli | 19 |
| 17. | Martin Jehli | 18.5 |
| 18. | Filip Vucelic | 16.5 |
| 18. | Michaja Bösch | 16.5 |
| 18. | Mohammad Ali Nasserzadeh | 16.5 |
| 21. | Jonathan Donzallaz | |
| 21. | Sidney Bovet | |
| 23. | Basil Schöni | |
| 23. | Cyrill Krähenbühl | |
| 23. | Thomas Debrunner | |
| 26. | Yannick Vessaz | |
| 27. | Kévin Jorand | |
| 27. | Maxime Guillod | |
| 29. | Reto Hablützel | |
| 30. | Amedeo Amato | |
| 31. | Adrian Aulbach | |
| 31. | Nico Kurmann | |
| 33. | Haidar Abboud | |
| 33. | Jilin Elavathingal | |
| 33. | Luca Salzani | |
| 33. | Momchil Peychev | |
| 33. | Samuel Stachelski | |
| 33. | Thomas Leu | |
| 39. | Gallay Charles | |
| 40. | David Ljubas | |
| 41. | Andy Moser | |
| 41. | Edouard Tang | |
| 41. | Ilija Tipura | |
| 41. | Roman Oechslin | |
| 45. | Dominik Schildknecht | |
| 46. | Colin Lavanchy | |
| 46. | Lorenz Brun | |
| 46. | Ramadani Faton | |
In der praktischen Richtung musst du zu jeder Aufgabe ein komplettes Programm (die Programmiersprache ist dir überlassen) schreiben, das deinen Lösungsweg implementiert, und anschliessend den Quelltext einschicken. Dazu haben wir die folgenden fünf kniffligen Aufgaben entworfen:
Hinweis: Dein Programm sollte die Eingabe von der Standardeingabe lesen und das Resultat auf die Standardausgabe ausgeben! Falls du eine Programmiersprache verwendest, bei der das (fast) nicht möglich ist, verwende eine Datei für die Ein- und Ausgabe.
Du solltest deine Lösungen direkt via dem Upload-Formulat, das in den Aufgaben verlinkt ist, einsenden. Als Einsendung sollst du entweder den Sourcecode direkt abgeben, oder falls er aus mehreren Dateien besteht, als Archiv einsenden. Es gibt ebenfalls ein Feld um eine Dokumentation zu den jeweilligen Aufgaben abzugeben (diese ist zwar optional aber sehr zu empfehlen)
Falls du Probleme beim Einsenden hast, kannst du deine Lösungen auch direkt per email an practical@soi.ch senden (schreibe in diesem Fall umbedingt deinen vollen Namen und SOI-Loginname).
Sende bitte keine kompilierten Programme, sondern lediglich den Programmcode. Wir werden kompilierte Programme nicht ausführen. Die Dokumentation kann in einem beliebigen Format (bsp: pdf, latex, doc, plaintext, etc.) geschrieben werden.
Versuche dich nach Möglichkeit auf nur eine Quelltextdatei zu beschränken um Übersicht und Kompilieren nicht zusätzlich zu komplizieren. Deine Quelltextdatei sollte einige Kopfzeilen enthalten mit den folgenden Informationen: Gelöste Aufgabe, Programmiersprache, Username:
/* Task: sample Lang: C++ User: chuck */
Ein Programm, das alle unsere Testfälle innerhalb der Zeitlimite (einige Sekunden) korrekt löst, erhält die maximale Punktzahl. Diese Testfälle sind nicht öffentlich und du kannst dein Programm vorher nicht auf ihnen ausprobieren. Bei der Zeitbeschränkung geht es um die Asymptotische Laufzeitkomplexität deines Programms. Im Allgemeinen heisst das, du solltest die Laufzeit von Monaten auf Sekunden optimieren, nicht aber von 5s auf 3s. Desweiteren bist du frei, wie viel Speicher du beanspruchst, solange es in einem vertretbaren Rahmen bleibt (so ca. 100MB). Falls dein Programm schnell und korrekt ist, bekommst du die maximale Punktzahl (und kannst keine Zusatzpunkte verdienen mit der Dokumentation) Für ein Korrektes aber langsames Programm verteilen wir Teilpunkte (je nachdem wie Langsam dein Programm ist) Ein schnelles aber (teilweise) falsches Programm wird (fast) keine Punkte erzielen.
Wir empfehlen dir auch, deine Lösungsidee in einer separaten Datei in Worten zu beschreiben. Falls in deinem Programm Fehler enthalten sind, verlierst du alle Punkte, die dieser Fehler verursacht. Wenn aus deiner Dokumentation aber ersichtlich ist, dass die eigentliche Lösungsidee richtig ist und es sich nur um einen Flüchtigkeitsfehler handelt, so werden wir einige Teilpunkte vergeben (basierend auf Qualität und Inhalt deiner Dokumentation und Quelltextdatei).
Diese Regeln sollen einen Schönheitswettbewerb vermeiden. (Es geht darum, was zu lernen beim Dokumentieren deiner Programme.)