#B20241104. 21点游戏

21点游戏

题目描述

2121 点游戏中,玩家的目标是使手中牌的点数总和尽可能接近 2121 点,但不能超过 2121 点。

游戏采用一副去除大小王的扑克牌,其中包含 1313 种牌面(A、2、3、4、5、6、7、8、9、10、J、Q、K),每种牌面有 44 张。牌的点数定义如下:

1)AA 可以代表 11 点或 1111 点; 2)JJQQKK 均代表 1010 点; 3)牌面 22 ~ 1010 代表的点数与其牌面相同(例如:22 代表 22 点,33 代表 33 点,以此类推)。

给定一个字符串 SS,表示你手中的牌。请将这些牌的点数累加(如果手中的牌有 AA,你可以单独调整其中每一个 AA 的点数),并计算在不超过 2121 点的情况下,SS 的总点数的最大值;如果无论怎么计算都大于 2121 点,则输出 00

注:牌面 1010 会占用 22 个字符位,其余牌面各占用 11 个字符位。

例 1: S = "A3A4";SS 的总点数的最大值是 1919(其中一个 "A" 代表 11 点,另一个 "A" 代表 1111 点),即 1 + 3 + 11 + 4。

22:S = "A10J";SS 的总点数的最大值是 2121("A" 代表 11 点,中间的 "10" 代表 1010 点,"J" 也代表 1010 点),即 1 + 10 + 10。

33:S = "AJQK";无论 "A" 代表 11 点还是 1111 点,SS 的总点数都大于 2121,故输出 00

输入格式

输入一个仅包含 1313 种牌面的字符串 SS

输出格式

输出一个整数,表示 SS 的总点数的最大值,如果无论怎么计算都大于 2121 点,则输出 00

样例

A3A4
19

数据范围

2S112 \le |S| \le 11,其中相同的牌不会超过 44 张。