📅  最后修改于: 2023-12-03 15:40:31.911000             🧑  作者: Mango
这个字谜要求我们判断一个字符串是否是由两个长度为 K 的非重叠子串组成。
我们可以使用 Python 的字符串切片来解决这个问题。具体的做法是,我们首先判断字符串的长度是否符合要求,即字符串长度为 2K。如果不符合要求,我们就直接返回 False。
def check_string(s: str, k: int) -> bool:
if len(s) != 2 * k:
return False
接下来,我们可以把原字符串分割成两个长度为 K 的字符串,并检查这两个字符串是否重叠。如果重叠了,我们就返回 False。如果没有重叠,我们就返回 True。
a = s[:k]
b = s[k:]
if a == b:
return False
return True
def check_string(s: str, k: int) -> bool:
if len(s) != 2 * k:
return False
a = s[:k]
b = s[k:]
if a == b:
return False
return True
以下是一个使用示例:
>>> check_string("abcdabcd", 4)
True
>>> check_string("abcdabdc", 4)
False