Для позначення кольорів RGB часто використовують шістнадцяткові трійники, такі як #ffffff
(білий) або #3764ef
(синюватий). Вони складаються з #
шести шістнадцяткових цифр (0-f), а іноді і трьох цифр, де справжній колір отримується подвоєнням кожної цифри. Наприклад, #fff
є #ffffff
і #1a8
є #11aa88
.
До жаль, це три цифри скороченого був golfiest інтернет не був пропозиції, до сих пір .
Напишіть програму або функцію, яка містить рядки від 1 до 7 символів:
- Перший персонаж завжди буде
#
. - Інші персонажі завжди будуть шістнадцятиричні цифри:
0123456789abcdef
.
Вхід - це скорочена форма шістнадцяткової трійки (або повна форма, якщо вказано 7 символів). Вам потрібно вивести повний шістнадцятковий триплет, який розширює стенографію на основі цих шаблонів:
Input -> Output
# -> #000000 (black)
#U -> #UUUUUU
#UV -> #UVUVUV
#UVW -> #UUVVWW (usual 3-digit shorthand)
#UVWX -> #UXVXWX
#UVWXY -> #UVWXYY
#UVWXYZ -> #UVWXYZ (not shorthand)
Кожен з U
, V
, W
, X
, Y
, і Z
може бути будь-який шестнадцатеричной цифрою. Вихід завжди - 7 символів.
Наприклад:
Input -> Output
# -> #000000
#0 -> #000000
#4 -> #444444
#f -> #ffffff
#a1 -> #a1a1a1
#0f -> #0f0f0f
#99 -> #999999
#1a8 -> #11aa88
#223 -> #222233
#fff -> #ffffff
#1230 -> #102030
#d767 -> #d77767
#bbb5 -> #b5b5b5
#aabbc -> #aabbcc
#00000 -> #000000
#3764e -> #3764ee
#3764ef -> #3764ef
#123456 -> #123456
#f8f8f8 -> #f8f8f8
Примітки
Вхід завжди починатиметься з цього,
#
і таким же повинен бути вихід.Ви можете припустити, що всі вхідні літери є малими (
abcdef
або великимиABCDEF
), як вам зручніше.Букви на виході можуть бути в будь-якому випадку, як вам зручніше. Можна навіть змішувати кейси.
Альфа / прозорість тут не розглядається (хоча є і шістнадцяткові версії кольорів RGBA).
Виграє найкоротший код у байтах.
#UVWXY -> #UVWXYY
записом, оскільки він дозволяє однозначне представлення для каналу Blue, але немає жодного подібного виразу для Червоного та Зеленого (наприклад, якщо я хотів, #889071
я не можу скорочувати, але #907188
можу бути ... як #90718
) інші всі працюють чудово.
#UVWX -> #UXVXWX
. Це настільки непослідовна та довільна поведінка, що важко повірити, що не існує пари браузерів, які насправді реалізують це.
#RGBA
і #RRGGBBAA
, тому # 1234 слід читати якrgba(17, 34, 51, 0.25)