Codeforces Round 499 (Div. 2) |
---|
Закончено |
Наташа собирается полететь на Марс. Ей необходимо построить ракету, которая собирается из нескольких ступеней в определённом порядке. Каждая из ступеней описывается одной строчной буквой латинского алфавита. Тем самым ракета описывается строкой — конкатенацией букв, соответствующих ступеням.
Всего на складе есть $$$n$$$ ступеней. Ракета должна содержать ровно $$$k$$$ из них. Ступени в ракете должны быть упорядочены по весу. После ступени с некоторой буквой можно ставить только ступень с буквой, идущей хотя бы на две позиции позже в алфавите (то есть через одну букву или более). Например, после буквы 'c' нельзя ставить буквы 'a', 'b', 'c' и 'd', зато можно ставить 'e', 'f', ..., 'z'.
Чтобы ракета летела максимально далеко, нужно, чтобы её вес был минимален. Вес ракеты равен сумме весов её ступеней. Ступень весит столько тонн, каков номер её буквы в алфавите. Иными словами, ступень 'a' весит одну тонну, 'b' весит две тонны, а 'z' — $$$26$$$ тонн.
Постройте ракету минимального веса или скажите, что ни одной ракеты построить нельзя. Каждую из ступеней на складе можно использовать не более одного раза.
Первая строка входных данных содержит два целых числа — $$$n$$$ и $$$k$$$ ($$$1 \le k \le n \le 50$$$) — количество доступных ступеней и требуемое количество ступеней в ракете.
Вторая строка содержит строку $$$s$$$ из $$$n$$$ строчных букв латинского алфавита. Каждая из букв задаёт очередную ступень, которую можно использовать при постройке. Каждую ступень можно использовать не более одного раза.
Выведите одно число — минимальный суммарный вес ракеты или -1, если ни одной ракеты построить нельзя.
5 3
xyabd
29
7 4
problem
34
2 2
ab
-1
12 1
abaabbaaabbb
1
В первом примере условию удовлетворяют такие ракеты:
Минимальный вес имеет ракета «adx», следовательно ответ равен $$$29$$$.
Во втором примере искомая ракета — «belo». Её вес — $$$2+5+12+15=34$$$.
В третьем примере $$$n=k=2$$$, поэтому ракета должна содержать обе ступени: 'a' и 'b'. Такая ракета не удовлетворяет условию, поскольку эти буквы стоят в алфавите рядом. Ответ — -1.
Название |
---|