35. Bundeswettbewerb

Material zu den Aufgaben der 1. Runde

Junioraufgabe 1: Luftballons

Unten eine Liste mit sieben Beispiel-Eingabedateien. Jede Datei enthält eine Füllfolge; dabei steht jede (Luftballon-)Zahl in einer eigenen Zeile. Die ersten 10 Zahlen in der ersten Datei entsprechen dem Beispiel in der Aufgabenstellung.


Aufgabe 2: Rhinozelfant

Für erste Tests kann man sich zunächst ein Beispiel-Foto laden, in verschiedenen Bilddateiformaten. Insgesamt gibt es neun Testbilder, die in den Formaten BMP, PNG und PPM (P6) zur Verfügung stehen. Pro Format haben wir die jeweils neun Dateien in ein ZIP-Archiv gepackt.

Informationen zum Format PPM gibt es natürlich in der Wikipedia.


Aufgabe 3: Rotation

Für diese Aufgabe gibt es drei Beispieleingaben. Es sind Textdateien, die die Zeichen #, 1-9 und Leerzeichen enthalten.

Ein Puzzle ist in einem Raster mit quadratischen Feldern organisiert. Alle Bestandteile eines Puzzles - Rahmen, Stäbchen und der freie Platz im Rahmen - belegen Felder dieses Rasters. Die Größe des Rasters wird durch die Anzahl der Felder bestimmt, die eine Seite des Rahmens belegt. Das ist die "Seitenlänge" des Puzzles. Im ersten Beispiel der Aufgabenstellung ist die Seitenlänge also 8, im zweiten Beispiel ist sie 12.

In der ersten Zeile jeder Datei steht eine Zahl N, die Seitenlänge des Puzzles. Dann kommen noch N Zeilen, die das Puzzle beschreiben. In dieser Beschreibung steht

  • ein # für ein Element des Rahmens,
  • ein Leerzeichen für freien Platz im Rahmen und
  • eine Ziffer für ein Feld eines Stäbchens.

Alle Felder eines Stäbchens haben die gleiche Ziffer: für das erste Stäbchen eine 0, für das zweite eine 1 usw.

Ein kleines Beispiel für ein (einfach lösbares) Puzzle:

5

#####

# 00#

#1 2#

#1 2#

## ##


Aufgabe 4: Radfahrspaß

Für diese Aufgabe stellen wir die (sehr kleinen) Beispiele aus der Aufgabenstellung (A, B und C) als Textdateien zur Verfügung. Außerdem gibt es 10 weitere Eingabedateien, die wir wegen ihrer Größe zusammen in eine ZIP-Datei gepackt haben (die 187 MB groß ist, Achtung!). Die einzelnen Eingabedateien enthalten die Zeichen /, \ und _; die Bedeutung ist in der Aufgabenstellung beschrieben.


Aufgabe 5: Buhnenrennen

Für das Buhnenrennen gibt es gleich 14 Beispiele. Der Einfachheit halber haben wir sie in eine ZIP-Datei verpackt. Die erste Datei (buhnenrennen1.txt) entspricht dem Beispiel in der Aufgabenstellung.

Jede Zeile in einer der Dateien gibt die Position einer Lücke an und hat die Form:

<grösse> <x-koordinate> <y-koordinate>

Das erste Zeichen in jeder Zeile gibt also die Größe der Lücke an. Ein x steht für eine Maxilücke, durch die Minnie und Max laufen können. Ein m steht für eine Minilücke, durch die nur Minnie laufen kann. Die ersten beiden Zeilen jeder Datei geben die Startlücken der Hunde an. In diesen Zeilen ist das erste Zeichen ein X (eine Maxilücke, Startlücke von Max) oder ein M (eine Minilücke, Startposition von Minnie).

Die Koordinaten der Lücken sind in Metern angegeben. Die Lücken in der ersten Buhne haben alle die x-Koordinate 0. Da die Buhnen jeweils 70 m voneinander entfernt sind, haben die x-Koordinaten die Werte 0 (erste Buhne), 70 (zweite Buhne), 140 (dritte Buhne), 210 (vierte Buhne), usw.

Die y-Koordinaten sind Dezimalzahlen und geben die Lage der Lücke in der Buhne an. Die Lücken einer Buhne sind in den Eingabedateien in der Regel nicht nach y-Koordinaten sortiert.

Ein einfaches Beispiel mit nur zwei Buhnen, in dem Minnie sicher von ihrer Startlücke zur einzigen (Mini)Lücke in der zweiten Buhne laufen kann:

  • X 0 95.4 
  • M 0 10.1 
  • m 70 9.9