AT_nikkei2019ex_g 回文スコア
Description
[problemUrl]: https://atcoder.jp/contests/nikkei2019-ex/tasks/nikkei2019ex_g
文字列 $ S $ が与えられます。$ S $ に含まれる文字をそれぞれ一度ずつ使い、何個かの回文を作ることを考えます。例えば $ S\ = $ `aaab` のとき、二つの回文 `aba` と `a` を作ることができます。このように、文字は自由な順序で使用することができ、$ S $ に複数回現れる文字は合計でその回数だけ使用します。
長さ $ L $ の回文を $ 1 $ 個作るごとに、$ L^2 $ のスコアが得られます。最大で合計いくつのスコアを得ることができるでしょうか?
Input Format
入力は以下の形式で標準入力から与えられる。
> $ S $
Output Format
得られる最大の合計スコアを出力せよ。
Explanation/Hint
### 制約
- $ 1\ ≦\ |S|\ ≦\ 100,000 $
- $ S $ は小文字アルファベットのみからなる。
### Sample Explanation 1
`aaba` からは二つの回文 `aba` と `a` を作ることができます。このときに得られる合計スコアは $ 9+1=10 $ であり、これが得られる最大の値です。