Учитывая цветовые коды в CMYK, преобразовать его в значение RGB.
Ввод:
строка из 4 целых чисел (от 0 до 100), разделенных пробелом
86 86 0 43
28 14 0 6
0 41 73 4
Вывод:
#141592
#ABCDEF
#F49043
Самый короткий код выигрывает!
СОВЕТ: Для преобразования CMYK в RGB вы можете использовать формулу, такую как:
Red = 255 x (1 - Cyan/100) x (1 - Black/100) Green = 255 x (1 - Magenta/100) x (1 - Black/100) Blue = 255 x (1 - Yellow/100) x (1 - Black/100)
и использовать эти три переменные, чтобы получить значение в
#RRGGBB
формате
code-golf
conversion
color
Был ли я
источник
источник
CMYK
значения как десятичные дроби от0
до1
или это необходимо сделать ,0
чтобы100
?Ответы:
PHP , 90 байт
Попробуйте онлайн!
источник
Python 3 ,
10098 байт-2 байта благодаря Роду.
Попробуйте онлайн!
источник
Желе , 24 байта
Полная программа, которая печатает результат.
Попробуйте онлайн!
Примечание: округление, а не настил может использоваться, вставляя два байта кода
+.
между255
иḞ
.Как?
источник
_.Ċ
Вместо+.Ḟ
... был бы другой способ округления, но последний, возможно, более широко используется.Сетчатка , 103 байта
Попробуйте онлайн! Примечание: этот код очень медленный, поэтому, пожалуйста, не забивайте сервер Денниса. Объяснение:
Переведите каждое число в одинарное и вычтите из 100.
Умножьте все числа на последний номер, который удален.
Умножьте на 51, чтобы после деления на 2000 мы получили
100 * 100 * 51 / 2000 = 255
желаемое.Разделите на 32000, а пол разделите остаток на 2000, создав, таким образом, пару значений из базы 16, хотя, к сожалению, сами по-прежнему записаны в базе 10.
Преобразование из базы 10 в базу 16.
Вставьте ведущий
#
.источник
Java 8, 166 байт
Попробуйте онлайн!
источник
Javascript (ES6), 106 байт
источник
C ++ (gcc) ,
169166 байтПопробуйте онлайн!
Используя оптимизированную формулу.
Добавленочто не является необходимым.+.5
для преобразования CMYK =0 0 0 0
правильно в RGB =,0xffffff
источник
Python 3 ,
114 110 108 106104 байтаrange[3]
как[0,1,2]
, нежелательные[]
удаленыПопробуйте онлайн!
источник
Ruby , 92 + 1 для флага -p = 93 байта
Попробуйте онлайн!
источник
Perl 5 ,
5852 + 1 (-a) =5953 байтаПопробуйте онлайн!
источник
постоянный ток , 53 байта
Попробуйте онлайн!
источник
Javascript, 104 байта
Пример кода:
источник
q / kdb +, 55 байтов
Решение:
Примеры:
Объяснение:
Довольно просто, украл
0.0255
трюк из других решений (спасибо!). Оценка выполняется справа налево.Ноты:
Число раундов по умолчанию будет стоить 3 байта
(_)
на пол, прежде чем привести к короткому.источник
05AB1E , 18 байт
Попробуйте онлайн!
-1 спасибо kalsowerus .
Имеет неточности с плавающей точкой, поэтому результаты могут быть однозначными, но используется формула в вопросе.
источник
$
так же, как1¹
input
когда будет несколькоHaskell, 165 байт
источник
Фортран, 156 байт
источник