回文边界

时间:2018-12-21 18:28:48

标签: python palindrome

HackerRank

  

字符串的 border 是它的适当前缀,它也是后缀。例如:

     
      
  • aabraabracadabra的边界。
  •   
  • kankankankankankan的边界。
  •   
  • dedecode的边界。请注意,decode不是decode的边界,因为它不合适。
  •   
     

回文边界是回文边界。例如,

     
      
  • aanaanabanana的回文边界。
  •   
  • llollolollololol的回文边界。
  •   

下面的代码应该计算编号。输入字符串内的回文边界的集合。

我没有为'aaaa'输入获得正确的输出。我得到的答案是7,而预期的答案是10。我得到的输入'ababa'和'abcacb'的正确输出。

string = input('')
l = list()
for i in range(0,len(string)):
    for j in range(i+1, len(string)+1):
        l.append(string[i:j])
print(l)
s = input(' ')
k = list()
for e in l:
    if len(e) >= 2:
        k.append(e)
print(k)
p = list()
for all in k:
    if all[::] == all[::-1]:
        p.append(all)
print(p)
c = 0
for q in p:
    end = len(q)-1
    start = 0
    while start < end:
        if q[0:start+1] == q[len(q)-1:end-1:-1]:
            c = c+1
            end = end-1
            start = start+1
print(c)

0 个答案:

没有答案