# 题目描述
# 给定a-z,26个英文字母小写字符串组成的字符串A和B,其中A可能存在重复字母,B不会存在重复字母,现从字符串A中按规则挑选一些字母可以组成字符串B。
# 挑选规则如下:
# 同一个位置的字母只能挑选一次,
# 被挑选字母的相对先后顺序不能被改变,
# 求最多可以同时从A中挑选多少组能组成B的字符串。
# 输入描述
# 输入为2行,第一行输入字符串a,第二行输入字符串b,行首行尾没有多余空格
# 输出描述
# 输出一行,包含一个数字,表示最多可以同时从a中挑选多少组能组成b的字符串,行末没有多余空格
# 输入 badc
# bac
# 输出 1
a= input()
b = input()
def getRsult(a,b):
index = {}
for i in range(len(b)):
index[b[i]] = i
count = [0]*len(b)
for c in a:
inx = index.get(c)
if inx is not None and (inx == 0 or count[inx] < count[inx -1]):
count[inx] += 1
return count[-1 ]
print(getRsult(a,b))原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。