您将获得包含小写字母的奇数长度字符串。还给出了字符串只包含一个字符 c 奇数次以及每隔一个字符偶数次。你必须说是可以删除任何一个c字符而字符串变成两个连接等于弦。 例如:aba as删除b字符串变为“aa”,这是“a”+“a”的连接
任何人都可以帮助解决这个问题吗?
答案 0 :(得分:0)
要删除的角色有3个选项。
角色位于中间。因此,只需检查前n / 2个字符是否与最后n / 2个字符匹配。
角色在下半场。所以前n / 2个字符已经很好了。开始检查下一个字符。如果您看到一个不匹配跳过它(这是要删除的字符)。如果您发现第二个不匹配,那么这不是解决方案。
最后一个角色是上半场。与前一个选项类似,最后的n / 2个字符是好的,因此请检查前n / 2个+1字符。如果不匹配,请再次跳过它,但如果有两个,那么这不是解决方案。
所以尝试所有3个选项,看看是否能找到解决方案。复杂性应该是O(N),因为你只需要几次线性地穿过字符串。