Помимо очевидных проблем, у вас неверная проверка на палиндромность.
Ваш код, например посчитает палиндромом строку "aab".
Потом, тут еще зачем-то бинпоиск присобачен. Зачем, вообще непонятно.
И еще ваше решение слишком медленное. Тут сложность порядка O(n^2 log n), что для 200000 ни в какие ограничения не влезет.
Для правильного решения нужно только одно наблюдение - у любого палиндрома можно взять середину длиной 2 или 3 - это будет более короткий палиндром. Поэтому, если в строке есть хоть какие-то палиндромы, то точно есть палиндромы длины 2 или 3.
решение
Надо проверить, есть ли 2 подряд идущих одинаковых символа. Если есть - лексикографически минимальная такая пара - ответ.
Иначе, надо проверить, есть ли тройка символов, где первый равен третьему. Из всех таких надо выбрать лексикографически минимальную.
Если и таких нет, то ответ "-1".
Задача решается за 2 не вложенных цикла.