给定两个由小写字母构成的字符串p和t,同时给定一个由数字1,2,3...|P|组成的排列。(其中|p|表示字符串p的长度)按该排列顺序依次删除字符串p相应位置上的字母,删除过程中,约定各个字符的位置不变。请计算最多可以删除几次,字符串p中仍然包含字符串t。(即字符串t仍然是字符串p的子序列)。
数据保证有解。
给定两个由小写字母构成的字符串p和t,同时给定一个由数字1,2,3...|P|组成的排列。(其中|p|表示字符串p的长度)按该排列顺序依次删除字符串p相应位置上的字母,删除过程中,约定各个字符的位置不变。请计算最多可以删除几次,字符串p中仍然包含字符串t。(即字符串t仍然是字符串p的子序列)。
数据保证有解。
第一行,一个字符串p;
第二行,一个字符串t;(1≤∣t∣<∣p∣≤200,001)
第三行,数字1到∣p∣组成的一个排列。
一行,一个整数,表示最多删除的次数。
ababcba abb 5 3 4 1 7 6 2
3
【样例 2 输入】
bbbabb
bb
1 6 3 4 2 5
【样例 2 输出】
4
【样例 1 说明】
在样例1中,删除的过程如下:
"ababcba" --> "abab-ba"--> "ab-b-ba" --> "ab---ba",接下来不能继续删除了,因为再删除后变为"-b---ba",无法获得单词"abb",因此最多只能删除3次。