Задание олимпиады: Вернем карточки в порядок с Васей
В сейфе n ячеек с номерами от 1 до n. В каждой ячейке первоначально лежала карточка с её номером. Вася переложил карточки в некотором порядке так, что в i-й ячейке оказалась карточка с числом ai. Петя может менять местами любые две карточки с номерами x и y, платя за это 2|x – y| рублей. Докажите, что Петя сможет вернуть все карточки на исходные места, заплатив не более |a1 – 1| + |a2 – 2| + ... + |an – n| рублей.
Разобрать решение
Пусть (b1, ..., bn) – произвольное расположение карточек (здесь bi – число на карточке в i-й ячейке). Назовём его ценой число
|b1 – 1| + |b2 – 2| + ... + |bn – n|. Лемма. Для любого расположения (b1, ..., bn), в котором не все карточки лежат на своих местах, можно поменять местами некоторые две карточки bi и bj так, что цена уменьшится ровно на 2|bi – bj|.
Доказательство. Заметим, что при нашем действии цена уменьшается на
|bi – i| + |bj – j| – |bi – j| – |bj – i| = (|bi – i| – |bj – i|) + (|bj – j| – |bi – j|). (*)
Нетрудно видеть, что для того, чтобы выражение (*) было равно 2|bi – bj|, достаточно выполнения неравенств i ≤ bj < bi ≤ j: тогда каждая из скобок в (*) будет равна |bi – bj|. Осталось найти такие индексыiиj. Первый способ. Пустьj– наибольшее число на карточке, лежащей не в своей ячейке. Карточка с числомbjтакже лежит не в своей ячейке, так что bj < j. Отметим первыеbjячеек. У нас есть ровноbjкарточек с числами, не превосходящимиbj, и одна из них (карточка с числомbj) уже лежит в неотмеченной ячейке с номером j < bj. Значит, найдётся такая отмеченная ячейкаi, чтоbi > bj. По выбору номераj, имеем bi ≤ j, откуда и следует цепочка неравенств i ≤ bj < bi ≤ j. Второй способ. Для каждогоkобозначим черезckномер ячейки, в которой лежит карточка с числомk(таким образом, cbk = k = bck). Пустьs– наименьшее число, при котором cs < s; такое число найдётся, поскольку c1+ ... +cn= 1 + ... +n. Тогда карточка с числомcsлежит не в своей ячейке. Пустьt– максимальный номер ячейки, меньшийsи такой, что ct ≠ t. Тогда ct > t, ибо t < s; кроме того, t ≥ cs из максимальностиt. Поскольку k = ck ≠ ct при всех t < k < s, из неравенства ct > t следует ct ≥ s. Итак, cs ≤ t < s ≤ ct. Полагая i = cs, j = ct, приходим к требуемому неравенству i ≤ bj < bj ≤ j. Итак, для любого расположения, отличного от требуемого, можно уменьшить его цену на некоторое число a, заплатив ровно a. Продолжая такие действия, мы в результате придём к расположению с нулевой ценой, заплатив в процессе ровно цену исходного расположения.
Обсуждение
0Комментариев пока нет.