CF1063A Oh Those Palindromes

题目描述

一个非空字符串叫做回文串。如果它从左到右,从右到左读相同,那么它就是回文串。 例如,“ABCBA”,“A”和“ABBA”都是回文串,而“ABAB”和“XY”则不是。 如果可以通过从字符串的开头和结尾删除一些(可能为零)字符来从该字符串获得新字符串, 则新字符串叫做另一个字符串的子字符串。 例如,“ABC”、“AB”和“C”是字符串“ABC”的子串,而“AC”和“D”不是。 我们把字符串的“回文计数”定义为回文的子串个数。 例如,字符串“aaa”的回文计数是6,因为它的所有子字符串都是回文, 而字符串“abc”的回文计数是3,因为只有长度为1的子字符串是回文。 给你一个字符串S。你可以任意地重新排列它的字符,求它的回文计数最大值。

输入格式

第一行包含整数n(1≤n≤100000)表示字符串s的长度。 第二行包含字符串S,它由n个小写字母组成。

输出格式

输出字符串t,(它是字符串s的一种排列) 此外,t应该具有最大回文计数的可能值。 如果有多个这样的字符串,输出它们中的任何一个。 ## 输入输出样例: #### 输入样例#1: ``` 5 oolol ``` #### 输出样例#1: ``` ololo ``` #### 输入样例#2: ``` 16 gagadbcgghhchbdf ``` #### 输出样例#2: ``` 16 gagadbcgghhchbdf ```

说明/提示

在第一个例子中,字符串“ololo”有9个9回文子串: "o","l","o","l","o","olo","lol","olo","oloo" 注意,即使某些子串重合,它们也会在生成的字符串中计入多次。 在第二个例子中,字符串“abccbaghghghgdfd”的回文计数为29。