算法示例:如输入字符串:“12012”,执行的过程如下:
第一轮依次 取5个字符 | 第二轮依次 取4个字符 | 第三轮依次 取3个字符 |
'12012' '20121' '01212' '12120' '21201' | '1201' '2012' '0121' '1212' '2120' | '120' '201' '012' '121'是回文字符串输出并停止 |
s=input("请输入字符串:")
n=len(s)
s=s*2
i=n
while i>0 and not flag: #枚举字符串长度,长度由n到1
for j in range(0,n):
t=s[j:i+j]
if
print("字符串环中的最长回文字符串是:"+t)
flag=True
break #退出for循环

同类型试题

y = sin x, x∈R, y∈[–1,1],周期为2π,函数图像以 x = (π/2) + kπ 为对称轴
y = arcsin x, x∈[–1,1], y∈[–π/2,π/2]
sin x = 0 ←→ arcsin x = 0
sin x = 1/2 ←→ arcsin x = π/6
sin x = √2/2 ←→ arcsin x = π/4
sin x = 1 ←→ arcsin x = π/2


y = sin x, x∈R, y∈[–1,1],周期为2π,函数图像以 x = (π/2) + kπ 为对称轴
y = arcsin x, x∈[–1,1], y∈[–π/2,π/2]
sin x = 0 ←→ arcsin x = 0
sin x = 1/2 ←→ arcsin x = π/6
sin x = √2/2 ←→ arcsin x = π/4
sin x = 1 ←→ arcsin x = π/2

