#P1328. 最少按键次数

最少按键次数

题目描述

给你一个字符串 ss,由小写英文字母组成。

电话键盘上的按键与 不同 小写英文字母集合相映射,可以通过按压按键来组成单词。例如,按键 2 对应 ["a","b","c"],我们需要按一次键来输入 "a",按两次键来输入 "b",按三次键来输入 "c"。

现在允许你将编号为 2 到 9 的按键重新映射到 不同 字母集合。每个按键可以映射到 任意数量 的字母,但每个字母 必须 恰好 映射到 一个 按键上。你需要找到输入字符串 ss 所需的 最少 按键次数。

返回重新映射按键后输入 ss 所需的 最少 按键次数。

下面给出了一种电话键盘上字母到按键的映射作为示例。注意 1,*,# 和 0 不 对应任何字母。

输入格式

一行只包含小写字母的字符串。

输出格式

一行一个整数,表示最少按键次数。

样例

abcde
5
aabbccddeeffgghhiiiiii
24

数据范围

对于 50% 50 \% 的数据, 1s261 \le |s| \le 26,且不会出现重复的字母。

对于所有的测试数据,1s1051 \le |s| \le 10^5

ss 仅由小写英文字母组成,s |s| 表示字符串的长度。