====== Vorbereitung auf die Informatik-Olympiade ====== Siehe https://soi.ch/contests/2021/round1/ für die Aufgaben. ====== Input/Output ====== Es geht darum, die Datenfiles einzulesen. Das soll direkt vom "Standard Input" erfolgen. Dazu müssen Zahlen und eventuell Strings korrekt geparst werden. Hier ein Vorschlage für die erste Aufgabe (stairrace): import sys # Problem loesen def loesen(case, lang, links, rechts): # Loesung ausgeben print("Case #%d: %d" % (case, 42)); # Daten einlesen # Alle print-statements müssen natürlich noch raus... ntest = int(sys.stdin.readline()) print("Es gibt %d Test-Fälle" % ntest) for test in range(ntest): print("Testfall %d" % test) lang = int(sys.stdin.readline()) links = [int(d) for d in sys.stdin.readline().split()] print(links) rechts = [int(d) for d in sys.stdin.readline().split()] print(rechts) print("Lösung:") loesen(test, lang, links, rechts) print("-"*20) Ausführen mit python stairrace.py < beispiel2.txt Und das gleiche in C++: #include using namespace std; void solve(int fall, int lang, int links[], int rechts[]) { cout << "Case #" << fall << " 42" << endl; } int main() { int n; cin >> n; cout << "Testcases : " << n << endl; for (int c=0; c> lang; int hoch[2][lang]; for (int seite=0; seite<2; seite++) { for (int h=0; h> hoch[seite][h]; cout << hoch[seite][h] << " "; } cout << endl; } solve(c, lang, hoch[0], hoch[1]); } return 0; } Übersetzen auf der Konsole (Terminal) mit g++ parse.cpp -o parse und Ausführen mit ./parse < beispiel2.txt wobei die in der Datei beispiel2.txt die Eingabe steht. ===== Aufgabe 1, Treppenlauf ===== Hinweis: Den Eingabe-Files sind die Lösungen angehängt, sollten aber vom Solver einfach ignoriert werden (weil nach allen Test-Cases). * Mehr Test-Cases für Teilaufgabe 3: {{ :lehrkraefte:blc:informatik:ffprg2-2020:stairrace3.txt |}} und {{ :lehrkraefte:blc:informatik:ffprg2-2020:stairrace3b.txt |}} * Mehr Test-Cases für Teilaufgabe 4 (ohne Gewähr für die Korrektheit): {{ :lehrkraefte:blc:informatik:ffprg2-2020:stairrace4.txt.gz |}} ===== Aufgabe 4, Batterie flicken ===== * Teilaufgabe 3, {{ :lehrkraefte:blc:informatik:ffprg2-2020:a4-t3.txt |TestCases mit möglichen Lösungen}}