问题 5510 --虎哥删字符

5510: 虎哥删字符★★★★

时间限制: 1 Sec  内存限制: 128 MB
提交: 56  解决: 27
[提交][状态][命题人:]

题目描述

给定两个由小写字母构成的字符串p和t,同时给定一个由数字1,2,3...∣P∣组成的排列。(其中∣p∣表示字符串p的长度)按该排列顺序依次删除字符串p相应位置上的字母,删除过程中,约定各个字符的位置不变。请计算最多可以删除几次,字符串p中仍然包含字符串t。(即字符串t仍然是字符串p的子序列)。
数据保证有解。

输入

第一行,一个字符串p;
第二行,一个字符串t;(1≤∣t∣<∣p∣≤200,001)
第三行,数字1到∣p∣组成的一个排列。

输出

一行,一个整数,表示最多删除的次数。
样例输入
Copy
ababcba
abb
5 3 4 1 7 6 2
样例输出
Copy
3

提示

样例2
输入:
bbbabb
bb
1 6 3 4 2 5
输出:
4

在样例1中,删除的过程如下:
"ababcba" --> "abab-ba"-->  "ab-b-ba" --> "ab---ba",接下来不能继续删除了,因为再删除后变为"-b---ba",无法获得单词"abb",因此最多只能删除3次。

来源

[提交][状态]