Wie, Sie können sich nicht an die 6- oder 7-stellige Telefonnummer erinnern, die für eine Sekunde auf dem Fernsehbildschirm angezeigt wurde ?! Mit der unten beschriebenen speziellen Technik verwandeln Sie sich in ein Wandertelefonbuch!
Offensichtlich ist die Nummer 402
leichter zu merken als die Nummer 110010010
, und die Nummer 337377
ist leichter zu merken als die Nummer 957472
. Dies bedeutet, dass die gespeicherte Nummer einerseits so wenig Ziffern wie möglich enthalten sollte, und andererseits ist es wünschenswert, dass die Nummer so viele sich wiederholende Nummern wie möglich enthält.
Als Kriterium für die Schwierigkeit, sich zu erinnern, nehmen wir die Summe der Anzahl der Ziffern in der Zahl und der Anzahl der verschiedenen Ziffern in der Zahl. Eine gespeicherte Nummer kann in ein anderes Zahlensystem geschrieben werden. Vielleicht ist es dann einfacher, sich daran zu erinnern. Zum Beispiel 65535
sieht die Zahl in hexadezimaler Schreibweise so aus FFFF
.
Aufgabe
Sie müssen ein Programm zur Auswahl der Basis des Zahlensystems schreiben, um das Komplexitätskriterium zu minimieren. Die Basis des Zahlensystems muss im Bereich von 2 bis 36 ausgewählt werden, dann können die Zahlen 0-9
und die englischen Buchstaben A-Z
zur Darstellung der Zahl verwendet werden.
Eingang
Die Eingabe enthält eine Dezimalzahl von 1 bis 999999999.
Ausgabe
Die Ausgabe muss die Basis des Zahlensystems enthalten (von 2 bis 36), wodurch das Kriterium der Komplexität des Speicherns minimiert wird, und die Zahl im ausgewählten Zahlensystem, die durch ein Leerzeichen getrennt ist. Geben mehrere Basen den gleichen Wert für das Kriterium an, wählen Sie die kleinste aus.
Anmerkungen
- Die Buchstaben müssen in Großbuchstaben geschrieben sein (
A-Z
).
Testfälle
Input-Output
1
2 1
2
3 2
65535
16 FFFF
123
12 A3
a-z
statt verwenden A-Z
?
A-Z
?