Bil-176 FINAL 2017-2018 Bahar |
Start: May.18.2018 at 09:00:00 AM
Finish: May.24.2018 at 11:00:00 AM
The contest is finished!
• Contest scoreboard
|
Feedback | | If you notice incorrect translations in Contester, please let author know.
|
|
Time limit 2000/2000/4000/4000 ms. Memory limit 265000/265000/65000/65000 Kb.
Problem description
Уинстон Джон работает в министерстве правды. Недавно его повысили до начальника
отдела, который занимается журналом «Информатика и жизнь». В связи с изменившейся
политической ситуацией нужно срочно привести все выпуски журнала в соответствие с текущей
действительностью.
В подчинении у Джона находятся три сотрудника министерства, между которыми он собирается
разделить всю работу. Для того, чтобы избежать путаницы, Джон хочет назначить a первых
выпусков журнала первому, b следующих второму и c последних третьему сотруднику. При
этом каждому сотруднику должен достаться хотя бы один выпуск. Поскольку подобные работы
проводятся уже не в первый раз, то про каждый номер журнала известно, сколько минут требуется
на приведение его содержания в соответствие с политической ситуацией.
Задание будет выполнено, когда каждый сотрудник закончит вносить изменения. Если сотрудник
справляется со своей частью раньше остальных, то оставшееся время он может использовать по
своему усмотрению. Обозначим минимальное и максимальное время, затраченное сотрудниками
на выполнение своей работы Tmin и Tmax соответственно. Задание будет выполнено за время
Tmax, а максимальное количество свободного времени, которое останется у его подчиненных есть
Tmax − Tmin.
Джон считает, что большое количество свободного времени плохо сказывается на моральном
облике подчиненных. Помогите Джону распределить работу так, чтобы величина Tmax −Tmin была
минимальна.
Input
Первая строка входного файла содержит целое число n (3 ≤ n ≤ 100 000) — количество выпусков
журнала. Вторая строка файла содержит n целых чисел t1, t2, . . . tn (0 ≤ t1, t2, . . . , tn ≤ 109) —
число минут, которое потребуется сотруднику министерства правды для внесения изменения в
соответствующий выпуск журнала.
Output
Выведите через пробел числа a, b и c (a + b + c = n, a, b, c > 0) — число выпусков журнала,
которое должно быть поручено первому, второму и третьему сотруднику. Если ответов несколько,
выведите любой.
Example
| stdin |
stdout |
6
1 2 3 0 2 1 |
2 1 3 |
3
1 2 3 |
1 1 1 |
Для отправки решений необходимо выполнить вход.
|