Олимпиадный тренинг

Задача . A. Бабушка Лаура и яблоки


Задача

Темы: *1200

Бабушка Лаура пошла на базар продавать яблоки, и за день ей посчастливилось продать все свои яблоки до последнего. Но бабушка очень старая, память у неё уже не та, и она забыла сколько яблок брала с собой на базар.

Она точно помнит, что у неё было n покупателей, и каждый из них, купил ровно половину тех яблок, которые были у бабушки на тот момент, а некоторым из них, она даже подарила ещё половинку яблока (если количество яблок на момент покупки было нечётным). И так до тех пор, пока яблоки не закончились совсем.

Таким образом, каждый покупатель забрал с собой целое положительное количество яблок, но при этом мог не заплатить за одну половинку яблока (если яблок на тот момент было нечётное количество).

Про каждого покупателя бабушка помнит дарила она ему половинку яблока или нет. Cтоимость одного яблока равна p (число p чётно).

Нужно вывести сумму денег, которая должна оказаться у бабушки в конце дня, чтобы она могла проверить, обсчитал ли её кто-то или нет.

Входные данные

В первой строке заданы целые числа n и p (1 ≤ n ≤ 40, 2 ≤ p ≤ 1000) — количество покупателей и цена одного яблока. Гарантируется, что число p чётно.

Далее следует n строк, описывающих покупателей в порядке их прихода. Каждый покупатель описан как half если он просто купил половину яблок, или halfplus, если бабушка вдобавок подарила ему ещё половинку яблока.

Гарантируется, что у бабушки изначально было хотя бы одно яблоко, а в конце дня яблок не осталось.

Выходные данные

Выведите целое число a — количество денег, которое должно быть у бабушки в конце дня.

Обратите внимание, что ответ может не поместиться в 32-битном типе данных. Для сохранения числа вы можете использовать, например, тип long long в языке C++ или тип long в языке Java.

Примечание

В первом примере у бабушки изначально было два яблока. Сначала она продала одно яблоко, а затем продала и подарила по половинке второго яблока второму покупателю.


Примеры
Входные данныеВыходные данные
1 2 10
half
halfplus
15
2 3 10
halfplus
halfplus
halfplus
55

time 1000 ms
memory 256 Mb
Правила оформления программ и список ошибок при автоматической проверке задач

Статистика успешных решений по компиляторам
 Кол-во
С++ Mingw-w645
Комментарий учителя