题目名称 1896. [国家集训队2011]字符串游戏
输入输出 nt2011_zej_a.in/out
难度等级 ★★
时间限制 1000 ms (1 s)
内存限制 512 MiB
测试数据 20
题目来源 Gravatarcstdio 于2014-12-22加入
开放分组 全部用户
提交状态
分类标签
动态规划
分享题解
通过:5, 提交:17, 通过率:29.41%
Gravatar小一米 100 0.285 s 3.16 MiB C++
Gravatarlcomyn 100 1.257 s 34.07 MiB C++
Gravatarmikumikumi 100 2.139 s 85.79 MiB C++
Gravatarcstdio 100 2.194 s 98.00 MiB C++
GravatarHellc 100 3.566 s 14.55 MiB C++
Gravatarlcomyn 80 1.187 s 51.27 MiB C++
GravatarHellc 75 3.078 s 14.55 MiB C++
Gravatarmikumikumi 70 1.818 s 65.76 MiB C++
Gravatarcstdio 65 2.241 s 98.00 MiB C++
Gravatarcstdio 60 0.032 s 0.47 MiB C++
关于 字符串游戏 的近10条评论(全部评论)

1896. [国家集训队2011]字符串游戏

★★   输入文件:nt2011_zej_a.in   输出文件:nt2011_zej_a.out   简单对比
时间限制:1 s   内存限制:512 MiB

【试题来源】

2011中国国家集训队命题答辩

【问题描述】

BX正在进行一个字符串游戏,他手上有一个字符串L,以及其他一些字符串的集合S,然后他可以进行以下操作:对于一个在集合S中的字符串p,如果p在L中出现,BX就可以选择是否将其删除,如果删除,则将删除后L分裂成的左右两部分合并。
举个例子,L='abcdefg' , S={'de'},如果BX选择将'de'从L中删去,则删后的L='abcfg'。
现在BX可以进行任意多次操作(删的次数,顺序都随意),他想知道最后L串的最短长度是多少。

【输入格式】

输入的第一行包含一个字符串,表示L。
第二行包含一个数字n,表示集合S中元素个数。
以下n行,每行一个字符串,表示S中的一个元素。
输入字符串都只包含小写字母。

【输出格式】

输出一个整数,表示L的最短长度。

【样例输入】

aaabccd
3
ac
abc
aaa

【样例输出】

2

【样例说明】

aaabccd
aacd
ad

【数据规模和约定】

对于40%数据,满足|L|<9
对于100%数据,满足|L|<151,|S|<31,S中的每个元素|p|<21