#MOCKS22. 序列构筑 (seq)
0
序列构筑 (seq)
序列构筑 (seq)
题目描述
Y 同学正在研究一种字符串序列的构筑方法。给定 个不同的字符串 ,每个字符串 都对应一个权值 。
Y 同学希望从这些字符串中挑选出若干个,组成一个序列 ,使得对于序列中任意相邻的两个字符串 与 (),均满足 是 的真前缀。
一个字符串 是字符串 的真前缀,当且仅当 是 的前缀且 。
该序列的权值定义为序列中所有字符串的权值之和,即 。请你帮助 Y 同学计算出能够构筑的序列权值的最大值。
输入格式
第一行包含一个整数 ,表示候选字符串的数量。
接下来的 行,每行包含一个字符串 和一个整数 ,中间用空格隔开。
输出格式
输出一行一个整数,表示序列权值的最大值。
样例
样例输入 #1
7
nefer 1
amun 3
nefertari 10
neferti 2
nefertem 4
nefertiti 9
amunra 10
样例输出 #1
13
数据范围与约定
对于 的数据,保证 ,,。所有字符串均由小写英文字母组成,且保证输入的 个字符串互不相同。
| 测试点编号 | 分值 | 特殊性质 | ||
|---|---|---|---|---|
| 无 | ||||
| 特殊性质 A | ||||
| 特殊性质 B | ||||
| 无 | ||||
- 特殊性质 A:所有字符串均仅由小写字母
a组成。 - 特殊性质 B:保证每个字符串的长度 。