挑战
对于字符串的每个字符(最后一个字符除外),请执行以下操作:
输出当前字符。
接下来,从以下列表中随机输出1-5(含)之间的随机次数:
- 当前角色
- 字符串的下一个字符
- 您当前使用的字符的开关盒版本
- 字符串的下一个字符的开关盒版本。
测试用例
String
-> SSSTSStrTrIiinIIngn
, . , . , . Hello world!
-> ,,, .. , ,, .... , , .. .. . HHH HHEeelLlLllooO wwOworOOrrrRllDd!!D
Programming Puzzles and Code Golf
-> PrPPrRrOooooogggRgGraAraaaMMMmmmimMIiininGGgG PPPPuZzZZzZzzZzllLLEEeEsEsssS a aANnNddD C COCoooOOdeDe E GGGoOllFFf
笔记
- 如果字符是字母(AZ和az)的一部分,则仅需要应用字符的切换大小写版本。
- 您的随机函数不必统一,但仍需要有机会返回给定列表中的任何元素。
- 您可以使用任何标准的I / O格式。
- 您可以假定输入的长度大于或等于2。
- 您可以假定输入仅包含ASCII字符。
- 标题不是测试用例(如果是有效的测试用例,则不是故意的)。
- Switchcase表示将char转换为小写(如果为大写),并将其转换为大写(如果为小写)。
String
生产SSSTSStrTrIiinIIngn
[S]SSTSS [t]rT, [r]I, [i]inII, [n]gn
,其中块之间的字符是第一个项目符号点(“ 输出当前字符 ”),而其他字符则是1-5次的随机1-4倍字符。但是我同意,更明确的解释是适当的。除了测试用例外,尚不清楚我们是否必须选择1-5次随机选择。而不是选择重复1-5次的随机选择(就像Gaia回答当前所做的那样)。