Hintergrund
Sie arbeiten für einen Brettspielhersteller und müssen für ein Spiel Holzkacheln mit den Zahlen von 0 bis n herstellen . Einige Kacheln wären jedoch ohne weiteres nicht mehr zu unterscheiden, z . B. 6und 9. Um dies zu vermeiden, müssen Sie Zahlen, die mit anderen (und nur mit diesen) verwechselt werden können, mit einem eindeutigen Punkt versehen, z. B. mit Kacheln wie 9.oder 6089..
Leider müssen Sie dafür ein altes, aber programmierbares Holzstichgerät verwenden, dessen Oberfläche so kaputt ist, dass Sie jedes Zeichen des Programms in einem unbeschreiblich langwierigen Prozess von Hand codieren müssen. Zum Glück versteht das Gerät jede vorhandene Programmiersprache. Sie suchen also das kürzeste Programm, das solche Kacheln druckt.
Aktuelle Aufgabe
Schreiben Sie das kürzeste Programm, das:
- Übernimmt eine positive ganze Zahl n als Eingabe. Wie die Eingabe gelesen wird, liegt bei Ihnen.
- Gibt jede der Zahlen von 0 bis n ( einschließlich 0 und n ) genau einmal in einer Reihenfolge Ihrer Wahl aus, die durch ein einzelnes Leerzeichen (einschließlich Zeilenvorschub) getrennt ist. Die Zahlen sind ohne führende Nullen auszudrucken.
- Fügt einen Punkt (.) An jede Zahl an, die sich bei Drehung um π (180 °) in eine andere gültige Zahl verwandelt, auch wenn diese Zahl größer als n ist. Die 0 und 8 Ihrer Schrift sind rotationssymmetrisch und die 9 ist eine gedrehte 6. Die 2 und 5 unterscheiden sich bei der Drehung. Die 1 ist nicht rotationssymmetrisch. Zahlen mit führenden Nullen sind ungültig.
Beispiele
Jede der folgenden Zahlen muss genau so gedruckt werden:
2
4
5
6.
8
9.
16
60
66.
68.
69
906
909.
8088.
9806.
9886
9889.
8088.
in Ihren Beispielen eine nicht rotationssichere Zahl
60
sein60.
?