Select Strings
题目描述
你有 N 个由小写英文字母组成的字符串 S1,S2,…,SN 和 N 个正整数 A1,A2,…,AN。
若集合 T⊆{1,2,…,N} 满足不存在一对 i,j∈T(i=j) 使得 Si 是 Sj 的子串,则称 T 为一个 良好集合。
求良好集合 T 的 i∈T∑Ai 的最大可能值。
什么是子串?
一个字符串 $S$ 的 子串 是通过从 $S$ 的开头删除零个或多个字符并从结尾删除零个或多个字符得到的字符串。
例如,$ab$ 是 $abc$ 的子串,但 $ac$ 不是 $abc$ 的子串。
输入格式
输入按下述格式由标准输入给出:
N
S1
S2
⋮
SN
A1 A2 … AN
输出格式
输出答案。
4
atcoder
at
coder
code
5 2 3 4
6
10
abcd
abc
ab
a
b
c
d
ab
bc
cd
100 10 50 30 60 90 80 70 40 20
260
提示
1≤N≤100
Si 是由小写英文字母组成的字符串。
1≤∣Si∣
∣S1∣+∣S2∣+…+∣SN∣≤5000
1≤Ai≤109可能的良好集合 T 及其对应的 i∈T∑Ai 如下:
T={1}: i∈T∑Ai=5
T={2}: i∈T∑Ai=2
T={3}: i∈T∑Ai=3
T={4}: i∈T∑Ai=4
T={2,3}: i∈T∑Ai=5
T={2,4}: i∈T∑Ai=6
其中最大值为 6,因此输出 6。
标签: AtCoder|abc354G
来源
AtCoder|abc354G