BCD Unterschied
Konvertieren Sie eine Ganzzahl n in BCD ( binär codierte Dezimalzahl ), indem Sie jede Dezimalstelle durch ihre 4-stellige Binärdarstellung ersetzen
234 -> 0 0 1 0 0 0 1 1 0 1 0 0
Drehen Sie dann die Liste der Binärziffern, um die größten und kleinsten Zahlen zu finden, die durch diese Liste ohne andere Umordnungen dargestellt werden können.
max: 1 1 0 1 0 0 0 0 1 0 0 0 (the entire list rotated left 6 times)
min: 0 0 0 0 1 0 0 0 1 1 0 1 (the entire list rotated right 2 times)
Konvertieren Sie diese Zahlen zurück in eine Dezimalzahl. Behandeln Sie dabei die Liste der Bits als reguläre Binärzahl und subtrahieren Sie die kleinste von der größten:
1 1 0 1 0 0 0 0 1 0 0 0 -> 3336
0 0 0 0 1 0 0 0 1 1 0 1 -> 141
3336 - 141 -> 3195
Die Ausgabe ist die Differenz der größten und kleinsten gefundenen Zahlen.
Testfälle:
234 -> 3195
1234 -> 52155
12 -> 135
975831 -> 14996295
4390742 -> 235954919
9752348061 -> 1002931578825
Max@#-Min@#&
Speichert ein Byte. Recht?