#4615. String Fair

0

String Fair

String Fair

题目描述

在一个字符串集市上,他们对由小写英文字母组成的非空字符串 SS 的美丽度进行判定。 字符串 SS 的美丽度等于由 NN 条标准决定的 NN 个分数之和。 对于 i=1,2,…,Ni = 1, 2, \ldots, N,第 ii 条标准决定的分数是“字符串 TiT_i(在输入中给定,长度至多为 33)在 SS 中作为连续子序列出现的次数”乘以 PiP_i。 输出由小写英文字母组成的非空字符串 SS 所能达到的最大美丽度。 如果可以得到任意大的美丽度,则输出 InfinityInfinity。 这里,字符串 U=U1U2…U∣U∣U = U_1U_2\ldots U_{|U|} 中字符串 VV 作为连续子序列出现的次数定义为满足 1≤i≤∣U∣−∣V∣+11 \leq i \leq |U|-|V|+1 且 UiUi+1…Ui+∣V∣−1=VU_iU_{i+1}\ldots U_{i+|V|-1} = V 的整数 ii 的个数。

输入格式

输入按照下列格式从标准输入给出: NN T1T_1 P1P_1 T2T_2 P2P_2 ⋮\vdots TNT_N PNP_N

输出格式

输出由小写英文字母组成的非空字符串 SS 所能达到的最大美丽度。 如果可以得到任意大的美丽度,则输出 InfinityInfinity。

3
a -5
ab 10
ba -20
Infinity
28
a -5
ab 10
ba -20
bb -20
bc -20
bd -20
be -20
bf -20
bg -20
bh -20
bi -20
bj -20
bk -20
bl -20
bm -20
bn -20
bo -20
bp -20
bq -20
br -20
bs -20
bt -20
bu -20
bv -20
bw -20
bx -20
by -20
bz -20
5
26
a -1
b -1
c -1
d -1
e -1
f -1
g -1
h -1
i -1
j -1
k -1
l -1
m -1
n -1
o -1
p -1
q -1
r -1
s -1
t -1
u -1
v -1
w -1
x -1
y -1
z -1
-1

提示

1≤N≤182781 \leq N \leq 18278 NN 是整数。 TiT_i 是长度在 11 到 33 之间且由小写英文字母组成的字符串。 i≠j⇒Ti≠Tji \neq j \Rightarrow T_i \neq T_j −109≤Pi≤109-10^9 \leq P_i \leq 10^9 PiP_i 是整数。例如,如果 S=S = abzabzabzabz:

由第 11 条标准决定的分数是 2×(−5)=−102 \times (-5) = -10 分,因为 aa 在 SS 中作为连续子序列出现了两次。 由第 22 条标准决定的分数是 2×10=202 \times 10 = 20 分,因为 abab 在 SS 中作为连续子序列出现了两次。 由第 33 条标准决定的分数是 0×(−20)=00 \times (-20) = 0 分,因为 baba 在 SS 中作为连续子序列出现了 00 次。

因此,SS 的美丽度为 (−10)+20+0=10(-10) + 20 + 0 = 10。 另一个例子,如果 S=S = abzabzabzabzabzabz:

由第 11 条标准决定的分数是 3×(−5)=−153 \times (-5) = -15 分,因为 aa 在 SS 中作为连续子序列出现了三次。 由第 22 条标准决定的分数是 3×10=303 \times 10 = 30 分,因为 abab 在 SS 中作为连续子序列出现了三次。 由第 33 条标准决定的分数是 0×(−20)=00 \times (-20) = 0 分,因为 baba 在 SS 中作为连续子序列出现了 00 次。

因此,SS 的美丽度为 (−15)+30+0=15(-15) + 30 + 0 = 15。 一般地,对于正整数 XX,如果 SS 是 XX 个 abzabz 的连接,那么 SS 的美丽度为 5X5X。 由于你可以获得任意大的美丽度,应当输出 InfinityInfinity。
S=S = abab 达到可能的最大美丽度。
注意 SS 应当是一个非空字符串。

标签: AtCoder|abc264G

来源

AtCoder|abc264G