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

Парк атракціонів

Парк атракціонів

\includegraphics{https://static.e-olymp.com/content/49/49270e28ebc371c9e6e548fe5edf6353526f0ecb.jpg} У місті нещодавно побудували парк атракціонів, у якому є павільон ігрових автоматів. Кожен з автоматів розраховано на одну людину. У програмі Всеросійської олімпіади планується відвідати цей павільон. Перед організаторами виникла складна задача --- скласти розклад гри учасників олімпіаді на автоматах таким чином, щоб кожен з \textbf{N} учасників олімпіади зміг пограти на кожному з автоматів, і при цьому автобус, який возить учасників з парку олімпіади, зміг би відправитись на місце проживання якомога раніше. Час переміщення учасників між автоматами, а також між автобусом і павільоном вважається рівним нулю. Кожен з учасників у довільний момент часу може як грати на автоматі, так і чекати своєї черги, наприклад, прогулюючись по парку. Для кожного з \textbf{M} (\textbf{M} ≤ \textbf{N}) автоматів відомо час гри на ньому \textbf{t_i} (\textbf{1} ≤ \textbf{i} ≤ \textbf{M}). Перервати почату гру на автоматі неможливо. Автобус привозить усіх учасників олімпіади у парк одночасно у нульовий момент часу. Потрібно написати програму, яка за заданими числами \textbf{N}, \textbf{M} та \textbf{t_i} визначає оптимальний розклад гри на автоматах для кожного з учасників. \InputFile У першому рядку вхідного файлу міститься два числа: \textbf{N} та \textbf{M} (\textbf{1} ≤ \textbf{M} ≤ \textbf{N} ≤ \textbf{100}). У другому рядкуе задано \textbf{M} цілих чисел \textbf{t_i} (\textbf{1} ≤ \textbf{t_i} ≤ \textbf{100}), кожне з яких задає час гри на \textbf{i}-му автоматі (\textbf{1} ≤ \textbf{i} ≤ \textbf{M}). Числа у рядку відокремлено одиночними пропусками. \OutputFile У першому рядку необхідно вивести одне число --- мінімально можливий час відправки автобусу з парку атракціонів. Далі необхідно вивести \textbf{N} ррозкладів ігор на автоматах, по одному для кожного з учасників. Кожен розклад описується в (\textbf{M + 1}) рядках, перший з який --- порожній, а далі йде \textbf{M} рядків, які описують автомати у порядку їх відвідування цим учасником. Відвідування автомату описується двома цілими числами: номером автомату \textbf{j} (\textbf{1} ≤ \textbf{j} ≤ \textbf{M}) та часом початку гри учасника на цьому автоматі.
Ліміт часу 1 секунда
Ліміт використання пам'яті 256 MiB
Вхідні дані #1
1 1
1
Вихідні дані #1
1

1 0
Джерело XXIII Всеросійська олімпіада школярів з інформатики, Пермь, Другий тур, 15.04.2011