解题思路:
注意事项:参考了c的写法用了好久
参考代码:
l=list(input().split())
l1=l[0]+l[0]
l2=l[1]+l[1]#之前都不会这个,原来可以这样搞
la=len(l[0])
lb=len(l[1])
ans=0
mn=min(la,lb)
for i in range(la):
for j in range(lb):
x=i
y=j
le=1#这里要注意,++里面直接用x++y++直接等于零,这里用的多个条件下面,所以
while l1[x]==l2[y] and l1[x+1]==l2[y+1] and le<mn:
le+=1
x+=1#这里也是要自己+1才能自己往前
y+=1
if le>ans:#之前还以为计数的位置错了其实没有,最重要的其实就是上面这块
ans=le
print(ans)
'''
题目 2872: 字符环
时间限制: 3s 内存限制: 192MB 提交: 34 解决: 17
题目描述
有两个由字符构成的环。请写一个程序,计算这两个字符环上最长连续公共字符串的长度。例如,字符串“ABCEFAGADEGKABUVKLM”的首尾连在一起,构成一个环;字符串“MADJKLUVKL”的首尾连在一起,构成一个另一个环;“UVKLMA”是这两个环的一个连续公共字符串。
输入格式
一行,包含两个字符串,分别对应一个字符环。这两个字符串之间用单个空格分开。字符串长度不超过255,且不包含空格等空白符。
输出格式
输出一个整数,表示这两个字符环上最长公共字符串的长度。
样例输入复制
ABCEFAGADEGKABUVKLM MADJKLUVKL
样例输出复制
6
'''
0.0分
0 人评分
C二级辅导-进制转换 (C语言代码)浏览:841 |
简洁的代码浏览:1410 |
C二级辅导-求偶数和 (C语言代码)浏览:607 |
C语言程序设计教程(第三版)课后习题10.4 (C语言代码)浏览:677 |
C语言程序设计教程(第三版)课后习题6.10 (C语言代码)浏览:1063 |
简单的a+b (C语言代码)浏览:636 |
C语言程序设计教程(第三版)课后习题7.2 (C语言代码)浏览:799 |
最小公倍数 (C语言代码)浏览:1031 |
1908题解浏览:640 |
文科生的悲哀 (C语言代码)浏览:1404 |