因此,您的任务是采用一个3x3的块,其中-
的平均空格和*
的平均填充空格,例如:
-**
-*-
*-*
并重新排列该块,以使*
形成一个X,如下所示:
*-*
-*-
*-*
输入: 3x3个正方形,如上面,它们可以是3条线,一个数组,也可以是您想要的。
输出:重新排列成X的最短动作量。每个动作都翻转了两个相互接触的字符,这些字符彼此水平,彼此垂直或彼此对角线。如果不可能,则返回任何不可能的输出,例如999
或-4242
。5
是最小的此类数字。
测试用例:
1)输出:1
-**
-*-
*-*
2)输出:-1
-*-
-*-
*-*
3)输出:3
---
-**
***
4)输出:0
*-*
-*-
*-*
您可以替换空白和非空白字符,但请确保在帖子中包括哪个字符
高尔夫代码
请记住,这是最短代码胜利的代码高尔夫球!
*
怎么办?您可以添加更多测试用例吗?
*
或小于5,则不可能。
-1
吗?例如5
(否则不可能),或者抛出错误?
*
相反,还是要交换吗?