Traceback (most recent call last): File "/usercode/file.py", line 25, in <module> for i in range(N): TypeError: range() integer end argument expected, got str.
def TheLongest(s):
s = '#' + '#'.join(s) + '#'
length = len(s)
Rl = [0]*length
pos = 0
MaxRight = 0
MaxLen = 0
for i in range(length):
if i < MaxRight:
Rl[i] = min(Rl[2*pos - i], (MaxRight - i))
else:
Rl[i] = 1
while i - Rl[i]>= 0 and i+Rl[i]<length and s[i - Rl[i]] == s[i+Rl[i]]:
Rl[i]+=1
if Rl[i]+i-1 >MaxRight:
pos = i
MaxRight = Rl[i]+i-1
MaxLen = max(MaxLen,Rl[i])
return (MaxLen-1)
N = raw_input()
a_list = []
for i in range(N):
s = raw_input()
a_list.append(TheLongest(s))
for i in range(N):
print a_list[i]
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.