首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从Rgb到Cmyk

从Rgb到Cmyk
EN

Code Golf用户
提问于 2016-06-30 07:15:06
回答 4查看 1.9K关注 0票数 9

给定3个字节或RGB作为输入,计算最近的CMYK值,并输出它们。

  • 创建带有参数和返回值的函数或在stdin/stdout上操作的程序
  • 使用您选择的颜色配置文件,但提供一个参考
  • 输入可以是范围0;255中的单独数值,也可以是6位十六进制字符串。
  • 输出应该是单独的数值,范围为0;1或0;100。
  • 标准代码高尔夫:无漏洞,最短代码获胜
  • 奢侈的想法是受欢迎的

样本数据:

代码语言:javascript
复制
input             output
108,174,106       [0.3793103448275862, 0.0, 0.3908045977011494, 0.3176470588235294]
0,0,0             0,0,0,1
170,255,238       33,0,7,0  
0x0088ff          1,0.4667,0,0
[250,235,215]     [0,6,14,1.96]  
#123456           .7907,.3953,0,.6627
  • 未标注的映射很好,而且可能是最简单的。
  • 不需要输入验证;允许浮动(从0到255),但也可以舍入。
  • 输出格式应该是清晰的注释或显而易见的,即:
    1. CMYK按这个顺序
    2. 不管是百分比0;100还是纯数字0;1

  • 测试应该包括简单的示例0,0,0。

本站拥有我能找到的最多位数的在线工具。有人知道一个提供超过4位数的工具吗?

EN

回答 4

Code Golf用户

发布于 2016-06-30 12:54:35

Python,46字节

代码语言:javascript
复制
lambda*c:[1-i/max(c)for i in c]+[1-max(c)/255]

要求输入在Python 2中浮动,非常肯定不是在3中。

票数 4
EN

Code Golf用户

发布于 2017-02-09 11:59:11

利普,114个字节

代码语言:javascript
复制
#R,G,B::((var J(max R G B))(if(!= 0 J)((list(- 1(/ R J))(- 1(/ G J))(- 1(/ B J))(- 1(/ J 255))))((list 0 0 0 1))))

在网上试试!

  • 保存了6个字节(忘记了max接受任意数量的参数)

我不太确定这是不是对的。示例数据的前两个结果是正确的,但其他结果则不正确(参见在网上试试)。

使用下面很好地描述的实现:

\begin{cases} J = max(R,G,B)\\ C = 1-\frac{R}{J}\\ M = 1-\frac{G}{J}\\ Y = 1-\frac{B}{J}\\ K = 1-\frac{J}{255}\\ \end{cases}
票数 2
EN

Code Golf用户

发布于 2016-06-30 16:22:40

C,155个字节

代码语言:javascript
复制
#define C(x) 1-x/(j>0?j:1)
#define F float
i=0;F j;f(F r,F g,F b){j=(r>g?r:g)>b?(r>g?r:g):b;for(;i++<4;)printf("%f\n",i>1?i>2?i>3?1-j/255:C(b):C(g):C(r));}

我想弄清楚怎么可能打更多的高尔夫球。

使用:

代码语言:javascript
复制
#define C(x) 1-x/(j>0?j:1)
#define F float
i=0;F j;f(F r,F g,F b){j=(r>g?r:g)>b?(r>g?r:g):b;for(;i++<4;)printf("%f\n",i>1?i>2?i>3?1-j/255:C(b):C(g):C(r));}
main(){
    f(108,174,106);
}

输出:

代码语言:javascript
复制
0.379310
0.000000
0.390805
0.317647
票数 0
EN
页面原文内容由Code Golf提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://codegolf.stackexchange.com/questions/84066

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档