Easy As ABC,也称为“ End View”,是一个难题,您将得到一个带有字母的空白网格;您必须部分填写表格,以便每个字母和每行中的每个字母正好位于其中;此外,行(或列)末尾的字母必须是从该方向在该行(或列)中可见的第一个字母。您在此代码高尔夫球中的目标将是解决“简单作为ABC”难题。
例如,这是今年MIT Mystery Hunt的Easy As ABC拼图,使用字母MIC:
解决方案是:
(很抱歉,C上的工件;我试图从其余的难题中删除不相关的信息。)
输入输出
输入将是字符串数组或可能带有定界符的字符串。它将从左上角开始,然后顺时针旋转。例如,上面的难题可以这样输入:
".CMM.M|....IM|.....I|C.ICI."
输出应为有边界或无边界的已求解网格。它可以是字符数组,字符串数组或任何其他方便的格式。必须接受相同的“空白”字符作为输入并显示为输出,但是该空白字符可以是任何东西。如果它们是单个字符串,则输入和输出都必须具有相同的分隔符(输入的两边之间以及输出的行之间)或根本没有分隔符。
对于无法解决的难题,您必须输出解决方案无法理解的内容。您可能会认为没有一个难题有多个解决方案。
您必须允许任何数量的字母和任何大小的网格;所有用过的字母将出现在网格的边框中。
这是代码高尔夫:通常,最短的代码胜出!
测试用例
"T.AA..|.T.TSS|..TST.|A...SS"
"R.RU..|B.B..B|.UR.UB|UR..B."
"N...NK|E.NK.K|..KK..|....EK"
"CA..DBD|.B..CC.|.D.DEB.|DB.A..A"
"...DDEBE|DC..EBBD|BA..ABF.|E..FECDE"
2
要清楚:整个字母都在边框上给出了吗?(即不会出现不是在边界上的信吗?)
—
quintopia
@quintopia:是的。边框将包含所有使用的字母。
—
Deusovi '16