鱼C论坛

 找回密码
 立即注册
查看: 1745|回复: 3

[已解决]来个dalao看看

[复制链接]
发表于 2020-11-28 12:44:24 | 显示全部楼层 |阅读模式
5鱼币
最佳答案
2020-11-28 12:44:25
  1. s=input('请输入一个长度不超过1000的非空字符串')
  2. n=len(s)
  3. Max1=0
  4. Max2=0
  5. if n==1:
  6.     print(1)
  7. elif n==2:
  8.     if s[0]==s[1]:
  9.         print(2)
  10.     else:
  11.         print(1)
  12. elif n>2:
  13.     for i in range(n):
  14.         a=i
  15.         while i<n and 2*a-i>=0:
  16.             if s[i]==s[2*a-i]:
  17.                 if Max1<2*(i-a)+1:
  18.                     Max1=2*(i-a)+1
  19.                 i+=1
  20.             else:
  21.                 break
  22.     for i in range(n-1):
  23.         a=i
  24.         b=i+1
  25.         if s[a]==s[b]:
  26.             while a+b-i<=n and i >=0:
  27.                 if s[i]==s[a+b-i]:
  28.                     if Max2<a+b-2*i+1:
  29.                         Max2=a+b-2*i+1
  30.                     i-=1
  31.                 else:
  32.                     break
  33. print(Max1) if Max1>Max2 else print(Max2)
复制代码
捕获.PNG
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-11-28 12:44:25 | 显示全部楼层    本楼为最佳答案   
  1. s=input('请输入一个长度不超过1000的非空字符串')
  2. n=len(s)
  3. Max1=0
  4. Max2=0
  5. if n==1:
  6.     print(1)
  7. elif n==2:
  8.     if s[0]==s[1]:
  9.         print(2)
  10.     else:
  11.         print(1)
  12. elif n>2:
  13.     for i in range(n):
  14.         a=i
  15.         while i<n and 2*a-i>=0:
  16.             if s[i]==s[2*a-i]:
  17.                 if Max1<2*(i-a)+1:
  18.                     Max1=2*(i-a)+1
  19.                 i+=1
  20.             else:
  21.                 break
  22.     for i in range(n-1):
  23.         a=i
  24.         b=i+1
  25.         if s[a]==s[b]:
  26.             while a+b-i<=n and i >=0:
  27.                 if s[i]==s[a+b-i]:
  28.                     if Max2<a+b-2*i+1:
  29.                         Max2=a+b-2*i+1
  30.                     i-=1
  31.                 else:
  32.                     break
  33. print(Max1) if Max1>Max2 else print(Max2)
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-11-29 00:10:28 | 显示全部楼层
     " TAP&PAT " 最多也只有 9 个字符啊,   11 是怎么来的?难道每一边都是连续 2 个空格?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2020-11-29 17:38:26 | 显示全部楼层
jackz007 发表于 2020-11-29 00:10
" TAP&PAT " 最多也只有 9 个字符啊,   11 是怎么来的?难道每一边都是连续 2 个空格?

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-5-3 11:00

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表