Loading

字符串极值

传送门 luogu U143139

题目描述

给定 \(n\) 个字符串。字符串中的每个字符仅由大小写字母组成,且每个字符都被赋予了一定的值。

赋值方法:大写字母 A ~ Z 的值分别为 \(1\) ~ \(26\) ;小写字母 a ~ z 的值分别为 \(-1\) ~ \(-26\)

对于每一个字符串,要求找到一个连续且非空的子串 ,使得子串内所有字符的值之和最大,并求出此最大值。

输入格式

第一行输入一个正整数 \(n\) ,代表字符串个数。

下面的 \(n\) 行中,每行输入一个非空字符串。

输出格式

输出一个数,代表区间内和的最大值。

样例输入

5
AAABC
aaabc
IakIOI
IakNOIp
ThatsNoWayAndImpossible

样例输出

8
-1
33
38
23

数据范围

对于前 \(20\%\) 的数据,保证 \(n=1\) ,字符串长度 \(\leq 100\)

对于前 \(40\%\) 的数据,保证 \(1 \leq n\leq4\) ,字符串长度 \(\leq 1000\)

对于前 \(70\%\) 的数据,保证 \(1 \leq n\leq10\),字符串长度 \(\leq 5000\)

对于 \(100\%\) 的数据,保证 \(1 \leq n\leq20\),字符串长度 \(\leq 100000\)

样例解释

对于第 \(2\) 个字符串,第一个字符 a 即为该字符串内值最大的子串。

对于第 \(5\) 个字符串,子串 NoW 即为该字符串内值最大的子串。

posted @ 2020-12-02 19:07  EdisonBa  阅读(133)  评论(0)    收藏  举报