题目描述
题目描述
题解
题解
提交记录
提交记录
中等

给你一个由小写英文字母和数字组成的字符串 s

对于每个字符,其 镜像字符 根据逆序定义其字符集合:

  • 对于字母,某字符的镜像字符是字母表中从末尾与其位置相同的字母。
    • 例如,'a' 的镜像字符是 'z''b' 的镜像字符是 'y',以此类推。
  • 对于数字,某字符的镜像字符是范围 '0''9' 中从末尾与其位置相同的数字。
    • 例如,'0' 的镜像字符是 '9''1' 的镜像字符是 '8',以此类推。

对于字符串中每个 唯一 字符 c

  • m 为其 镜像字符 。
  • freq(x) 表示字符 x 在字符串中出现的次数。
  • 计算其与镜像字符出现次数之间的 绝对差,定义为:|freq(c) - freq(m)|

镜像对 (c, m)(m, c) 被视为相同,只能被计算 一次 

返回一个整数,表示所有这些 不同的镜像对 的绝对差之和。

 

示例 1:

输入: s = "ab1z9"

输出: 3

解释:

对于每个镜像对:

cmfreq(c)freq(m)|freq(c) - freq(m)|
az110
by101
18101
90101

因此,答案是 0 + 1 + 1 + 1 = 3

示例 2:

输入: s = "4m7n"

输出: 2

解释:

cmfreq(c)freq(m)|freq(c) - freq(m)|
45101
mn110
72101

因此,答案是 1 + 0 + 1 = 2

示例 3:

输入:s = "byby"

输出:0

解释:

cmfreq(c)freq(m)|freq(c) - freq(m)|
by220

因此,答案是 0 。

 

提示:

  • 1 <= s.length <= 5 * 105
  • s 仅由小写英文字母和数字组成。
 
代码
代码
测试用例
测试用例
测试结果
测试结果