Непустая строка называется палиндромом, если она одинаково читается как слева направо, так и справа налево. Задана строка S из N прописных букв латинского алфавита.Сколько существует способов вычеркнуть из нее некоторый (возможно пустой) набор символов, чтобы остался палиндром. Способы, отличающиеся порядком вычеркивания этих символов считаются одинаковыми.
INPUT.TXT | OUTPUT.TXT |
BAOBAB |
22 |
Известная своими нетрадиционными разработками фирма Macrohard решила выпустить пакет обновления (service pack), чудесным образом превращающий программный пакет Beds v1.0 в Beds v1.01. Этот пакет обновления состоит из последовательности команд следующих двух типов:
Old P L
- означает, что нужно взять L байт пакета Beds v1.0, начиная с позиции P;
New seq
- означает, что нужно взять и переписать непосредственно последовательность байтов seq
.
Old
равна L1 байт, а длина команды New
равна (L2 + длина последовательности seq
) байт.
Ваша задача: по содержимому пакетов Beds v1.0 и Beds v1.01 составить пакет обновления наименьшей длины.
INPUT.TXT | OUTPUT.TXT |
1 1 thisisanoldversion thisisanewversion |
5 3 Old 1 8 New ew Old 12 7 |
Около необитаемого острова потерпело крушение почтовое судно, в трюме которого хранились N почтовых контейнеров, представляющих собой кубы равных размеров. Отважный почтальон Кругликов, пытавшийся спасти их, быстро понял, что единственный способ уберечь их от промокания - склеить из них столбик и оставить его плавать в вертикальном положении. К сожалению, разные контейнеры имеют разную стоимость. Помогите почтальону Кругликов решить эту непростую задачу, выбрав такое расположение контейнеров в столбике, чтобы суммарная стоимость C подмоченных контейнеров была наименьшей (контейнер промокает, если его дно оказывается ниже уровня воды).
INPUT.TXT | OUTPUT.TXT |
2 2 -1 3 8 -4 40 |
40 1 2 |