回文是一个本身相反的词。
现在有些单词看起来像回文,但看起来却不然。例如,考虑单词 sheesh
, sheesh
不是回文,因为它的反向是hseehs
不同的,但是如果我们认为sh
是单个字母,那么它的反向是sheesh
。我们将这种词称为半回文。
具体来说,如果我们可以将单词拆分成一定数量的块,则该单词为半回文,这样当块的顺序颠倒时,便形成了原始单词。(因为sheesh
这些块是sh e e sh
),我们也将不要求任何块包含两个单词的字母(否则每个单词都是半回文)。例如rear
,不是半回文,因为它r ea r
具有一个块(ea
),其中包含来自原始单词两边的字母。我们认为奇数长度的单词的中心字符不在单词的两侧,因此对于奇数长度的单词,中心字符必须始终位于其自己的块中。
您的任务是获取正整数列表,并确定它们是否为半回文。您的代码应输出两个一致的不相等值,如果输入是半回文,则应输出一个,否则将输出另一个。但是,代码的字节序列本身必须是半回文。
答案将以字节计分,而字节数越少越好。
测试用例
[] -> True
[1] -> True
[2,1,2] -> True
[3,4,2,2,3,4] -> True
[3,5,1,3,5] -> True
[1,2,3,1] -> False
[1,2,3,3,4,1] -> False
[11,44,1,1] -> False
[1,3,2,4,1,2,3] -> False
borrible指出,这些与广义Smarandache回文相似。因此,如果您想做进一步的阅读,那是一个开始的地方。