In the event of technical difficulties with Szkopuł, please contact us via email at [email protected].
If you would like to talk about tasks, solutions or technical problems, please visit our Discord servers. They are moderated by the community, but members of the support team are also active there.
Dany jest alfabet złożony z początkowych liter alfabetu angielskiego. Każda litera w tym alfabecie ma określoną wagę, która jest dodatnią liczbą całkowitą. Wagą słowa zbudowanego z liter alfabetu nazywamy sumę wag wszystkich jego liter. Językiem nad alfabetem nazywamy dowolny skończony zbiór różnych słów utworzonych z liter tego alfabetu. Wagą języka nazywamy sumę wag wszystkich jego słów.
Mówimy że język jest bezprefiksowy, gdy żadne jego słowo nie jest prefiksem (początkiem) jego innego słowa. Chcemy ustalić, jaka może być najmniejsza waga -elementowego, bezprefiksowego języka nad alfabetem .
Załóżmy, że , waga litery — oraz waga litery — . Wtedy: waga słowa — . . Waga języka — . Język nie jest bezprefiksowy, ponieważ jego słowo jest prefiksem słowa . Najlżejszym trzyelementowym bezprefiksowym językiem nad alfabetem , o określonych powyżej wagach liter, jest ; jego waga wynosi .
Napisz program, który:
W pierwszym wierszu standardowego wejścia znajdują się dwie dodatnie liczby całkowite i oddzielone pojedynczym odstępem . Są to odpowiednio: liczba słów języka i liczba liter alfabetu. Drugi wiersz zawiera dodatnich liczb całkowitych nie większych niż , oddzielonych pojedynczymi odstępami — -ta liczba jest wagą -tej litery.
W pierwszym i jedynym wierszu standardowego wyjścia Twój program powinien wypisać jedną liczbę całkowitą — wagę najlżejszego, bezprefiksowego, -elementowego języka nad alfabetem .
Dla danych wejściowych:
3 2 2 5
poprawną odpowiedzią jest:
16
Autor zadania: Wojciech Rytter.