我的两个孩子喜欢玩以下玩具:

里面有形状的彩色区域可以被触摸,然后海龟点亮该区域并播放声音,或者说颜色的名称或内部的形状。中间按钮改变模式。有一种模式,当触碰到不同的音符时,会播放不同的音符:如果孩子顺时针方向接触三个连续的区域,就会播放一个特别的旋律1。如果按逆时针方向放置三个连续区域,则播放一个特殊的旋律2。
挑战
让我们模拟一下玩具的内部逻辑。如果一个字符串有三个按键,如果这三个键是连续区域(顺时针或逆时针方向),则返回两个不同的值,如果不是,则返回第三个不同的值。
ROYGB表示红色、橙色、黄色、绿色和蓝色;或者它们的形状:HSRTC表示心、方、星(R)、三角形和圆形。大小写无关紧要,您可以选择使用大写或小写的输入和输出。RBO,GYO,BBR,YRG,YGB,ORB.0表示无特殊组合,1用于顺时针组合触发的旋律,-1用于逆时针组合触发的旋律。Input Output // Input based on colors
--------------
RBO 0 // No special combination
GYO -1 // Counterclockwise melody triggered
BBR 0 // No special combination
YRG 0 // No special combination
YGB 1 // Clockwise melody triggered
ORB -1 // Counterclockwise melody triggered
OOO 0 // No special combination
BRO 1 // Clockwise melody triggered这是密码-高尔夫,所以希望每种语言的最短代码都能赢!
发布于 2018-10-23 13:04:16
以颜色首字母作为输入。按顺时针方向返回2,逆时针返回true,逆时针返回false。
s=>~(x='ROYGBRO_ORBGYOR'.search(s))?x<5:2发布于 2018-10-23 15:37:10
发布于 2018-10-23 16:19:56
=FIND(A1,"ROYGBRO_RBGYORB")<6大写颜色作为输入。
无模式返回#VALUE!,顺时针返回TRUE,逆时针返回FALSE .
可以在IFERROR( ,0)中为+11 bytes包装以处理异常,而非模式情况则返回“0”。
https://codegolf.stackexchange.com/questions/174564
复制相似问题