eolymp
bolt
Попробуйте наш новый интерфейс для отправки задач
Задачи

Быстрая сумма

Быстрая сумма

Быстрая сумма вычисляется по пакету данных, и представляет собой одно число. Если данные поменяются, то быстрая сумма также изменится. Поэтому быстрые суммы используют для нахождения ошибок при передаче данных, утверждения содержимого документов, а также во многих других ситуациях, где необходимо обнаружить нежелательное изменение данных.

Вам следует реализовать алгоритм вычисления быстрой суммы, который называется Quicksum. Пакет Quicksum обрабатывает только заглавные буквы и пробелы. Текст всегда начинается и заканчивается заглавной буквой. В других местах пробелы и буквы могут встречаться в любой комбинации, включая последовательные пробелы.

Quicksum равно сумме произведений позиций символов на их символьное значение. Значение пробела равно нулю, значения букв равно их позициям в алфавите. Так A = 1, B = 2 и так далее до Z = 26. Рассмотрим примеры Quicksum для пакетов "ACM" и "**MID CENTRAL**":

ACM: 1 * 1 + 2 * 3 + 3 * 13 = 46

MID CENTRAL: 1 * 13 + 2 * 9 + 3 * 4 + 4 * 0 + 5 * 3 + 6 * 5 + 7 * 14 + 8 * 20 + 9 * 18 + 10 * 1 + 11 * 12 = 650

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

Состоит из одного или нескольких пакетов. Последняя строка входных данных содержит # и не обрабатывается. Каждый пакет находится в отдельной строке, не начинается и не заканчивается пробелом, и содержит от 1 до 255 символов.

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

Для каждого пакета вывести в отдельной строке искомую быструю сумму.

Лимит времени 1 секунда
Лимит использования памяти 128 MiB
Входные данные #1
ACM
MID CENTRAL
REGIONAL PROGRAMMING CONTEST
ACN
A C M
ABC
BBC
#
Выходные данные #1
46
650
4690
49
75
14
15
Источник 2006 ACM North America, Mid-Central, Problem A