AT_abc363_c [ABC363C] Avoid K Palindrome 2
Description
[problemUrl]: https://atcoder.jp/contests/abc363/tasks/abc363_c
英小文字のみからなる長さ $ N $ の文字列 $ S $ が与えられます。
$ S $ の文字を並び替えて得られる文字列($ S $ 自身を含む)であって、長さ $ K $ の回文を部分文字列として **含まない** ものの個数を求めてください。
ただし、長さ $ N $ の文字列 $ T $ が「長さ $ K $ の回文を部分文字列として含む」とは、
ある $ (N-K) $ 以下の非負整数 $ i $ が存在して、$ 1 $ 以上 $ K $ 以下の任意の整数 $ j $ について $ T_{i+j}=T_{i+K+1-j} $ が成り立つことをいいます。
ここで、$ T_k $ は文字列 $ T $ の $ k $ 文字目を表すものとします。
Input Format
入力は以下の形式で標準入力から与えられる。
> $ N $ $ K $ $ S $
Output Format
$ S $ の文字を並び替えて得られる文字列であって、長さ $ K $ の回文を部分文字列として含まないものの個数を出力せよ。
Explanation/Hint
### 制約
- $ 2\leq\ K\ \leq\ N\ \leq\ 10 $
- $ N,K $ は整数
- $ S $ は英小文字のみからなる長さ $ N $ の文字列
### Sample Explanation 1
`aab` を並び替えて得られる文字列は `aab`, `aba`, `baa` の $ 3 $ つであり、このうち `aab` および `baa` は長さ $ 2 $ の回文 `aa` を部分文字列として含んでいます。 よって、条件をみたす文字列は `aba` のみであり、$ 1 $ を出力します。
### Sample Explanation 2
`zzyyx` を並べて得られる文字列は $ 30 $ 個ありますが、そのうち長さ $ 3 $ の回文を含まないようなものは $ 16 $ 個です。よって、$ 16 $ を出力します。