У CSS кольори можуть бути визначені «шістнадцятковим триплетом» - трибайтовим (шестизначним) шістнадцятковим числом, де кожен байт представляє червоний, зелений або синій компоненти кольору. Наприклад, #FF0000
повністю червоний і еквівалентний rgb(255, 0, 0)
.
Кольори також можуть бути представлені скороченням, що використовує три шістнадцяткові цифри. Скорочення розгортається до шестизначної форми шляхом дублювання кожної цифри. Наприклад, #ABC
стає #AABBCC
.
Оскільки в шістнадцятковій стенограмі менше цифр, можна зобразити менше кольорів.
Змагання
Напишіть програму або функцію, яка приймає шестизначний шістнадцятковий кольоровий код і виводить найближчий трицифровий колірний код.
Ось приклад:
- Шістнадцятковий код: # 28a086
- Червоний компонент
- 0x28 = 40 (десятковий)
- 0x22 = 34
- 0x33 = 51
- 0x22 ближче, тому перша цифра укороченого кольорового коду дорівнює 2
- Зелений компонент
- 0xa0 = 160
- 0x99 = 153
- 0xaa = 170
- 0x99 ближче, тому друга цифра дорівнює 9
- Синій компонент
- 0x86 = 134
- 0x77 = 119
- 0x88 = 136
- 0x88 ближче, тому третя цифра дорівнює 8
- Скорочений код кольору - №298 (який розширюється до # 229988)
Ваша програма чи функція повинні сприймати як введення шість-значний шістнадцятковий код кольору, заздалегідь #
створений і виводити тризначний кольоровий код, заздалегідь передбачений #
.
Приклади
- # FF0000 → # F00
- # 00FF00 → # 0F0
- # D913C4 → # D1C
- # C0DD39 → # BD3
- # 28A086 → # 298
- # C0CF6F → # BC7
Оцінка балів
Це виклик з гольф-кодом, тому найкоротша відповідь на вашій мові виграє! Діють стандартні правила.
#
додати щось до виклику.