题意
思路: 一次从前遍历到最后,找到每一个字符最早出现的位置,一次从后往前遍历,找到每个字符最后出现的位置 然后,从后遍历的第i+1个字符的位置-从前遍历第i个字符的位置,就是相邻两个最大的宽,然后持续更新
。
PS 结合使用
n,m=map(int,input().split())
s=input()
t=input()
a=[]
ans=0
i=-1
for x in t[:-1]:#反着遍历一遍
i=s.find(x,i+1)
a+=[i]
i=n
for x in t[:0:-1]:
i=s.rfind(x,0,i)
ans=max(ans,i-a.pop())
print(ans)