Час

11:39:21
11 Лютого 2012
ACM-ICPC Thailand Southern Region Programming Contest 2011
Залишилося: 3 години 21 хвилина
Кінець: 11.02.2012 15:00
Лідер: Informatimukas
П`ятірка за тиждень 22
Залишилося: 10 годин 21 хвилина
Кінець: 11.02.2012 22:00
Лідер: NuM
Версія для друку

Перетворення масивів

   У нас є масив додатаніх чисел. Ми повинні перетворити цей масив повторюючи одну й ту ж операцію, доки не залишиться менше двох елементів у масиві:

  1. вибрати два елементи, які мають мінімальну абсолютну різницю. Якщо таких пар декілька, то вибрати пару, чия сума елементів мінімальна. Якщо все ж залишилось декілька пар, то вибрати довільну.
  2. зменшити значення елементів вибраної пари на 1.
  3. видалити нульові елементи масиву.

   Легко помітити, що процес закінчиться через фіксовану кількість кроків.

   Наприклад, маємо масив з 4 елементів {3, 2, 3, 2}. Процес перетворення буде відбуватись наступним чином:

  • Крок 1: {3, 2, 3, 2} => {3, 1, 3, 1} (зменшуємо елементи 2 і 2)
  • Крок 2: {3, 1, 3, 1} => {3, 3} (чергове зменшення значень елементів робить їх рівними 0 і 0, видаляємо їх)
  • Крок 3: {3, 3} => {2, 2}
  • Крок 4: {2, 2} => {1, 1}
  • Крок 5: {1, 1} => { }

   Отримали пустий масив.

   Необхідно взнати кількість кроків перетворення.


Технічні умови

   Вхідні дані

   В одному рядку записано послідовність чисел, відокремлених між собою комою і пропуском. Після останнього числа стоїть крапка. Розмір масиву від 1 до 50, кожен елемент може приймати значення від 1 до 1000.

   Вихідні дані

   Кількість кроків перетворення даного масиву.


Інформація про задачу

Ліміт часу: 1 секунда
Ліміт пам`яті: 64 MB
Бали за пройдений тест: 4.34783
Складність: 38% 21/34

Приклад

Приклад вхідних даних

Sample 1
3, 2, 3, 2.

Sample 2
3.

Sample 3
1, 2, 3, 4.

Sample 4
10, 6, 3, 7, 7, 9, 5, 1, 8, 4.

Приклад вихідних даних

Sample 1
5

Sample 2
0

Sample 3
4

Sample 4
27


← Візерунок Список задач Шахова модель →