2047:换一换

文件提交:无需freopen 内存限制:128 MB 时间限制:1.000 S
评测方式:普通裁判 命题人:
提交:4 解决:2

题目描述

给定一个由小写字母组成的字符串 $S$,你必须对该字符串中两个不同的位置进行一次交换,问交换后可以得到多少不同的字符串?

输入

一个由小写字母组成的字符串 $S(2\le |S|\le 10^6)$,$|S|$ 为字符串 $S$ 的长度

输出

输出一个整数 ,表示交换后不同字符串的数量

样例输入-1 复制

ab

样例输出-1 复制

1

样例输入-2 复制

aab

样例输出-2 复制

3

提示

样例解释1: 交换 $S_1,S_2$ 得到 $ba$,仅此一种方案

样例解释2:交换 $S_1,S_2$ 得到 $aab$,交换 $S_1,S_3$ 得到 $baa$, 交换 $S_2,S_3$ 得到 $aba$,共 $3$ 种不同的字符串