介绍
我们-尤其是我们中间的极客,他们往往是粉丝-都记得这本古老的漫画《远方》:
显然,施瓦兹曼教授本可以稍稍提高一下自己的编程技能,然后再使用他的发明。但是您可以自己复制它吗...使用尽可能少的字节?
输入规格
您必须创建一个脚本,将狗的声音转换为适当的音调“嘿”。这是纯代码高尔夫;最低字节数获胜。
您的输入将包含以下标记的某种组合:
Bark
,Baark
,Baaark
,Baaaark
,...(即,B*rk
具有至少1a
替换星号)Woof
,Wooof
,Woooof
,...(W*f
与至少2个o
小号替换星号)Grr
,Grrr
,Grrrr
,...,(G
后面至少2个r
S)- 任何数量的
.
(句号),!
(感叹号)和/或?
(问号)字符,它们可能出现在输入中的任何位置
再次注意,Woof
基于和Grr
的令牌始终分别至少需要两个 o
s和r
s;Wof
和Gr
是不是有效的标记。
令牌可以持续多长时间没有限制(例如,令牌中可以有多少个重复的a
s Bark
);但是,您的解码器只需要正确使用总s,s或s 最多10个a
的输入令牌即可通过此挑战。o
r
输出规格
忠于Schwartzman的设计,您的犬类解码器程序必须将其处理为以下输出文本:
Bark
,Woof
和Grr
成为Hey
;Baark
,Wooof
和Grrr
成为Heyy
;Baaark
,Woooof
和Grrrr
成为Heyyy
; 等等- 对于所有
Bark
基于令牌的令牌,基于y
输出Hey
的令牌中的a
s 数量必须等于s 的数量; - 对于所有
Woof
基于令牌的令牌,基于y
输出Hey
的令牌中的s 数量必须比o
s 的数量少一; - 对于所有
Grr
基于令牌的令牌,基于y
输出Hey
的令牌中的s 数量必须比r
s 的数量少一; - 所有标点符号(
.
,!
和?
)均保持不变。
切记y
仅从Woof
s和Grr
s 的输出中删除一个!Baaaaaaaark?
8 a
秒的输入将变为8 秒Heyyyyyyyy?
的匹配集y
。但是,Woooooooof?
只有Heyyyyyyy?
7 y
s。
同样,如果您可以让您的程序适用于无限制大小的输入令牌,那很好,但是出于此挑战的目的,将仅检查您的程序以确保其对于不超过10个重复字母的输入令牌正常工作。
输入中所有基于Bark
-,Woof
-和- Grr
的令牌都假定以大写字母开头。因此,没有必要办理转Bark grrr
进Hey heyy
或任何类似。
输入和输出示例
- 输入:
Bark. Bark! Bark!!
- 输出:
Hey. Hey! Hey!!
- 输入:
- 输入:
Baaaaaark?
(6a
秒) - 输出:
Heyyyyyy?
(6y
秒)
- 输入:
- 输入:(
Grrrrrrrr...
八r
秒) - 输出:
Heyyyyyyy...
(7个y
S)
- 输入:(
- 输入:
?...!
- 输出:
?...!
- 输入:
- 输入:
Wooof Woof? Grrrr. Baaaark Grr!
- 输出:
Heyy Hey? Heyyy. Heyyyy Hey!
- 输入: