已结束 GESP欢乐赛 #5

A1442 | 微妙的减法

来源官方 / 2023
时间限制1s
内存限制128MB
通过 / 提交0/0

题目描述

$AC$ 狗和小$D$ 正在玩字符串游戏。游戏将进行 $t$ 轮,每一轮中,都会给定一个由小写字母组成的字符串 $s$。

$AC$ 狗先走,两个玩家轮流进行操作。$AC$ 狗被允许删除 $s$ 中任何偶数长度的子串(可能为空串),小$D$ 被允许删除 $s$ 中任何奇数长度的子串。

例如,字符串 $s=$ s1s2......sk,玩家可以选择奇数长度或者偶数长度的子串 slsl+1......sr-1sr 并删除,$s$ 变为 s1....sl-1sr+1......sk

$s$ 变为空串后,该轮游戏结束,每个玩家计算他本轮的分数。玩家的分数是他移除的所有字符的总和,其中 a 的值为 $1$,b 的值为 $2$,c 的值是 $3$......z 的值是 $26$。得分高的玩家赢得本轮的游戏。对于每一轮,假设两名玩家都是以最佳的状态参加游戏,他们会最大限度的提高自己的得分,你需要确定获胜者是 $AC$ 狗还是小 $D$,还需要确定胜者与败者之间的分数差(分数差大于 $0$)。(可以证明,平局是不可能的)

输入格式

输入的第一行包含一个整数 $t$ ($1 \le t \le 5 \times 10^3$) 表示轮数。

接下来的每一行一个字符串 $s$。($1 \le |s| \le 2 \times 10 ^ 3$)

输出格式

对于每一轮,打印一行包含一个字符串和一个整数。如果 $AC$ 狗赢得了这一轮,字符串为 AC。如果小 $D$ 赢得了这一轮,则字符串为 D。整数为胜者与败者之间的分数差。

输入输出样例

输入 #1
5
aba
abc
cba
n
acgo
输出 #1
AC 2
AC 4
AC 4
D 14
AC 26
C++ 编辑器
输入
输出