该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。
序列构筑 (seq)
题目描述
Y 同学正在研究一种字符串序列的构筑方法。给定 N 个不同的字符串 s1,s2,…,sN,每个字符串 si 都对应一个权值 pi。
Y 同学希望从这些字符串中挑选出若干个,组成一个序列 t1,t2,…,tk,使得对于序列中任意相邻的两个字符串 tj 与 tj+1 (1≤j<k),均满足 tj 是 tj+1 的真前缀。
一个字符串 A 是字符串 B 的真前缀,当且仅当 A 是 B 的前缀且 A=B。
该序列的权值定义为序列中所有字符串的权值之和,即 ∑j=1kweight(tj)。请你帮助 Y 同学计算出能够构筑的序列权值的最大值。
输入格式
第一行包含一个整数 N,表示候选字符串的数量。
接下来的 N 行,每行包含一个字符串 si 和一个整数 pi,中间用空格隔开。
输出格式
输出一行一个整数,表示序列权值的最大值。
样例
样例输入 #1
7
nefer 1
amun 3
nefertari 10
neferti 2
nefertem 4
nefertiti 9
amunra 10
样例输出 #1
13
数据范围与约定
对于 100% 的数据,保证 1≤N≤106,∑∣si∣≤106,1≤pi≤109。所有字符串均由小写英文字母组成,且保证输入的 N 个字符串互不相同。
| 测试点编号 |
分值 |
N≤ |
∑∣si∣≤ |
特殊性质 |
| 1∼4 |
20 |
1000 |
无 |
| 5∼8 |
106 |
特殊性质 A |
| 9∼12 |
特殊性质 B |
| 13∼14 |
10 |
105 |
无 |
| 15∼20 |
30 |
106 |
- 特殊性质 A:所有字符串均仅由小写字母
a 组成。
- 特殊性质 B:保证每个字符串的长度 ∣si∣≤5。