Mistrzostwa Polski Szkół Średnich w Programowaniu Zespołowym 2024

2020-2022 2023 Regulations Schedule RODO info Ranking

Problem description


Skuteczny hacking
(G)
Limit pamięci: 256 MB
Limit czasu: 2.50 s

Jasio chce wystartować w Bajtockich Mistrzostwach Szkół Średnich w Programowaniu Zespołowym. Zastanawia się teraz nad nazwą drużyny. A że ma w sobie żyłkę hakiera, postanowił dobrać ją tak, żeby zajmowała jak największą szerokość ekranu. Jasio ma nadzieję, że wtedy, za każdym razem, gdy system konkursowy wyświetli listę rankingową, tabelka z wynikami się “rozjedzie” (szerokość kolumny z nazwą drużyny będzie zbyt duża, powodując poszerzenie tabelki) i wszyscy zobaczą jego geniusz hackingu.

Jasio pieczołowicie sprawdził, która literka alfabetu daje przy wybranej czcionce największą szerokość (w pikselach), wysłał zapytanie do systemu i okazało się, że system konkursowy odrzucił nazwę drużyny, wykrywając, że jej wypisanie na ekranie przekroczyłoby limit szerokości kolumny w tabeli rankingowej.

Jasio zasmucił się, że jego niecny plan nie zadziałał i dlatego postanowił utrzeć nosa autorom systemu konkursowego. Wysyłając wiele zapytań do systemu, ustalił wartość graniczną P. System odrzuca wszystkie nazwy drużyny, których szerokość przy wyświetleniu przekracza szerokość P pikseli.

Jasio postanowił wysłać do systemu taką nazwę drużyny, która zmieści się w limicie pikseli, a jednocześnie będzie się składała z jak największej liczby znaków. Być może uda mu się zapchać bazę danych wysyłając dużo zapytań i każdy zobaczy, że jest elitarnym hakierem? Pomóż mu!

Wejście

W pierwszym wierszu wejścia znajduje się jedna liczba naturalna P, określająca limit na szerokość nazwy drużyny (w pikselach).

W drugim wierszu wejścia znajduje się jedna liczba naturalna |Σ|, określająca liczbę różnych znaków w alfabecie, których pozwala użyć system (wartość ta może być większa niż 26 lub nawet 256, ponieważ system, zależnie od konfiguracji, może pozwalać na używanie znaków z UTF-8).

W trzecim (ostatnim) wierszu wejścia znajduje się |Σ| liczb naturalnych Wi pooddzielanych pojedynczymi odstępami. Są to szerokości kolejnych znaków alfabetu podane w pikselach według czcionki, której używa system konkursowy.

Wyjście

W pierwszym (jedynym) wierszu wyjścia powinna się znaleźć jedna nieujemna liczba całkowita – największa możliwa liczba znaków, z których może składać się akceptowana przez system nazwa drużyny.

Ograniczenia

1 ≤ P ≤ 109, 1 ≤ |Σ| ≤ 100 000, 1 ≤ Wi ≤ 109.

Przykład

Wejście Wyjście Wyjaśnienie
110
3
19 30 22
5

Jeżeli założyć, że kolejne znaki alfabetu to a, b i c, to przykładowa nazwa drużyny Jasia mogłaby być na przykład acacc (zajmowałaby 19 + 22 + 19 + 22 + 22 = 104 piksele szerokości).