Colorful Balls#248

Colorful Balls (Editorial)

У кінці одна коробка має містити всі жовті м'ячики, інша — усі сині, третя — бути порожньою. Отже, розв'язок повністю визначається вибором: яка коробка стане «жовтою», а яка — «синьою». Третя автоматично лишається порожньою.

Порахуємо кількість переставлянь для фіксованого вибору. Нехай — загальна кількість жовтих м'ячиків, S_b — синіх. Якщо жовтою призначено коробку , то перекласти доведеться всі жовті м'ячики, які зараз не в ній, тобто S_y - y_i штук. Аналогічно, якщо синьою призначено коробку , перекласти треба S_b - b_j синіх м'ячиків.

Отже, вартість вибору дорівнює

(S_y - y_i) + (S_b - b_j), \qquad i \ne j.

Упорядкованих пар різних коробок лише 3 \cdot 2 = 6, тому просто переберемо всі й візьмемо мінімум. Рівносильно можна максимізувати y_i + b_j по i \ne j.

Умова i \ne j істотна: жовті та сині м'ячики не можуть опинитися в одній коробці. Випадки, коли якісь коробки порожні від початку, обробляються тією ж формулою без застережень.