printРабочее место участника

printЗадачи

1284. Палиндромы

Ограничения: время – 1s/2s, память – 32MiB Ввод: input.txt или стандартный ввод Вывод: output.txt или стандартный вывод copy
Послать решение Blockly Посылки Темы Где Обсудить (0)

Непустая строка, содержащая некоторое слово, называется палиндромом, если это слово одинаково читается как слева направо, так и справа налево. Пусть задана строка, в которой записано слово `S`, состоящее из `N` прописных букв латинского алфавита. Путем вычеркивания из этого слова некоторого набора символов можно получить строку, которая будет палиндромом. Требуется написать программу, с помощью которой можно определить, сколько существует способов вычеркивания из заданного слова некоторого (возможно пустого) набора символов, чтобы образованные таким образом строки являлись палиндромами. Способы, отличающиеся порядком вычеркивания символов, считаются одинаковыми. Палиндромы, образованными даже одинаковыми буквами, стоящими на разных позициях исходной строки, считаются различными.
Во входном файле в первой строке записано слово `S` (`1\ ≤\ N\ ≤\ 60`).
В выходном файле должно содержаться одно целое число – число способов получения палиндромов путем вычеркивания.

Пример ввода

BAOBAB

Пример вывода

22
loading