Verschiedene Systeme haben unterschiedliche Möglichkeiten, Farben zu beschreiben, auch wenn alle im RGBA-Raum sprechen. Ein Front-End-Entwickler, der mit CSS vertraut ist, mag es vorziehen #RRGGBBAA
. Aber Android-Entwickler mögen es vorziehen #AARRGGBB
. Beim Umgang mit AAS-Dateiformat #AABBGGRR
wird benötigt. Das ist zu verwirrend. Vielleicht brauchen wir ein Programm, das zwischen verschiedenen Farbformaten konvertieren kann.
Eingang:
Die Eingabe enthält 3 Teile:
- Die Farbe, die transformiert werden soll (z. B.
#1459AC0F
eine Zeichenfolge, die mit einem scharfen Vorzeichen#
gefolgt von 8 hexadezimalen Ziffern beginnt) . - Das Format der angegebenen Farbe (z. B.
#RRGGBBAA
eine Zeichenfolge, die mit#
8 Buchstaben beginnt und in 4 verschiedene Gruppen unterteilt ist. Jede Gruppe ist eine vonRR
/GG
/BB
/AA
. - Das Format, in das konvertiert werden soll.
Ausgabe:
- Ausgabe der Farbe in konvertiertem Format
Testfälle:
Color, OriginalFormat, TargetFormat -> Result
#12345678, #RRGGBBAA, #AARRGGBB -> #78123456
#1A2B3C4D, #RRGGBBAA, #AABBGGRR -> #4D3C2B1A
#DEADBEEF, #AARRGGBB, #GGBBAARR -> #BEEFDEAD
Eingabe / Ausgabe unterscheidet nicht zwischen Groß- und Kleinschreibung. Sie können auf jede akzeptable Weise Daten eingeben / ausgeben.
Regeln:
Dies ist Code Golf, der kürzeste (in Byte) Code für jeden Sprachgewinn
AARRGGBB
ist objektiv das beste Farbformat. Wenn etwas 24 Bit erwartetRRGGBB
und SieAARRGGBB
stattdessen 32 Bit angeben, kann es das obere Byte einfach ignorieren und trotzdem funktionieren.