受此评论链启发...
我想
enklact
摆脱挑战,但是我不能...@ETHproductions 进行编码(v):使用包含唯一元素的小节来实现查找表。
粘贴是压缩查找表的一种非常有用的方法。例如,假设您具有以下颜色列表:
red
green
blue
yellow
purple
orange
如果您希望能够将一种颜色用作输入并返回其在此列表中的索引,那么显然有一种简单的方法:
["red", "green", "blue", "yellow", "purple", "orange"].index(input())
但是有一种方法可以减少字节数:
"rgbypo".index(input()[0])
之所以有效,是因为每个字符串的第一个(或第0个)索引都是唯一的。这个例子很明显,但有时会更难一些。如果我们想为此列表创建查找表怎么办?
Sweet Onion Chicken Teriyaki
Oven Roasted Chicken
Turkey Breast
Italian BMT
Tuna
Black Forest Ham
Meatball Marinara
在这种情况下,我们不能这样做:
"SOTITBM".index(input()[0])
因为有两个不同的输入以a开头'T'
,即“ Tuna”和“ Turkey”。我们必须看一个不同的索引。如果查看每个字符串的第4个索引,您会注意到它们都是唯一的。所以我们可以做...
"enklact".index(input()[3])
在这种情况下,“字符串”是“字符串”。
这导致我们面对今天的挑战...
给定字符串列表,请返回任何有效的字符串。换句话说,给定一个字符串列表,返回任何新的字符串,其中每个字母都是唯一的,并且该字符串是通过连接每个字符串的第i个字母而形成的。
如果没有有效的字符串,则您的提交必须返回一个空字符串或一致的伪造值。与往常一样,允许使用功能或完整程序,并且输入/输出格式是允许的(在合理范围内)。
每个字符串将仅包含可打印的ASCII,并且此挑战区分大小写。
这是代码问题,因此请尝试使用您选择的语言编写最短的程序!
测试用例
Input:
Programming
Puzzles
Code
Golf
Output (any one of these):
"ozdl"
"gzef"
Input:
the quick
brown fox
jumped over
lazy dogs
Output:
"tbjl"
"hrua"
"eomz"
" wpy"
"qne "
"if o"
"kxvs"
Note that "u dd" and "coog" are not valid.
Input:
Sunday
Monday
Tuesday
Wednesday
Thursday
Friday
Saturday
Output:
""
Input:
AbC
aBc
bbC
Output:
"Aab"
Input:
@#$%^_
Hello_World
How are you?
Output:
"#eo"
"$lw"
"%l "
"^oa"
Input:
a
ab
ac
Output:
""