9洞迷你高尔夫球:说明
- 难度各不相同的9个(大多数情况下非常容易)代码高尔夫挑战
- 多次使用同一语言的处罚
- 有关特定主题的所有挑战(此主题:文本操作)
- 输入和输出可以是任何合理的位置(例如,STDIN和STDOUT,从文件中读取/写入文件,函数自变量和返回值等),但不得将其硬编码到程序中
- 受9孔挑战和文本机制的启发
孔洞
高尔夫球码袋
以两个字符串作为输入。
输出第一个字符串的字符数,而忽略第二个字符串中任何字符的出现。
示例:f("foobarbaz", "ao")
=>5
打高尔夫球的前言
以两个字符串作为输入。
输出第一个字符串,每行以第二行为前缀。
示例:f("foo\nbar\nbaz", "a")
=>"a foo\na bar\na baz"
标签与空间之战
将一个字符串s
,一个数字n
和一个布尔值b
(根据需要指定)作为输入。
如果b
为true,则输出s
,每个制表符都转换为n
空格。
否则,输出,s
并将每个n
空格都转换为制表符。
示例:f("if (x) {\n\tdoStuff();\n}", 4, true)
=>"if (x) {\n[sp][sp][sp][sp]doStuff();\n}"
([sp]
表示空格)高尔夫支柱
以字符串
s
,数字n
和另一个数字m
作为输入。每行
输出s
一列,每列输出n
一个m
字符。
列之间也要有一个空格的填充。
示例:f("this is some placeholder text, foo bar baz...", 3, 5)
=>this aceho foo is so lder bar b me pl text, az...
友好的信件
以字符串s
和数字n
作为输入。
输出中最常见的n
字母组s
。
如果有平局,则输出其中的一个或全部。
示例:f("abcdeabcfghiabc", 3)
=>"abc"
炒
以字符串作为输入。鸡蛋字母早餐
输出字符串,其所有单词都乱码(字母顺序随机),但首字母和尾字母除外。
为简单起见,假设输入将是一个由空格隔开的“单词”列表(即,在中@$&_():;" foo bar
,@$&_():;"
被视为“单词”。)
示例:f("this is a sentence that will be scrambled")
=>"tihs is a stcneene that wlil be sclamrbed"
ASCII码
以字符串作为输入。
如果字符串仅包含数字和空格,则将数字替换为其各自的ASCII字符(删除空格)。
否则,做相反的操作(数字字符)。
示例:f("ASCIIfy challenge")
=>"65 83 67 73 73 102 121 32 99 104 97 108 108 101 110 103 101"
示例2:f("65 83 67 73 73 102 121 32 99 104 97 108 108 101 110 103 101")
=>"ASCIIfy challenge"
迷你-迷你降价转换
以字符串作为输入。
输出使用mini-markdown转换的字符串,如Stack Exchange上的注释中所使用。
这是一个更小-ER版:你只需要处理**bold**
,*italics*
和`code`
。
您无需处理无效的嵌套,例如**foo *bar** baz*
。还假定当您看到定界符(*
或`
)时,它将始终意味着格式化(即te**st**ing
=>te<b>st</b>ing
和foo* bar *baz
=>foo<i> bar </i>baz
)。
示例:f("**foo** *bar **baz*** `qux`")
=>"<b>foo</b> <i>bar <b>baz</b></i> <code>qux</code>"
只有最好的角色
将strings
,numbern
和stringr
作为输入。
输出n
中每个单词的th个字符s
。(0索引,单词之间用空格分隔)。
如果单词的长度小于n
,请改用r
该单词。
示例:f("this is a test sentence foo bar baz", 2, "-")
=>"i--snorz"
计分
您的分数是程序中字符数的总和。对于每种重复的语言,请乘以110%。例如,如果您有三个Ruby解决方案,并且所有解决方案的字符总数为1000,则得分为1000 * 1.1 * 1.1 =1210。如果您的得分为非整数,则四舍五入。
祝好运!
1
挑战8涉及Markdown定义最不明确的方面之一,而做得最好的方面则很难做到。它需要清楚说明如何处理歧义和良好的测试套件。请参阅mdtest套件中的Emphasis.text。
—
彼得·泰勒
@PeterTaylor好吧,
—
门把手
_
不要紧,因为我指定不包括在内。我已进行编辑以澄清其他一些问题。
那
—
彼得·泰勒
**foo***bar**baz*
呢
挑战6与此相同。
—
daniero 2014年
我投票结束这个问题是因为题外,因为这是一个多部分的挑战,各部分之间的交互不足
—
pppery