Не уверен, что "олимпиадное" проще, ибо проще просто некуда!
Да, конечно, Да и вообще, имхо, "олимпиадное" решение часто не проще. И, как правило, сложнее, и длиннее. Зато "красивее". Но это субъективно. На вкус и цвет...
(немного истории)
Что касается этой задачи, то я придумал ее лет >20 назад. Тогда один мой знакомый (фанат работы со школьниками), не зная решения, послал ее в качестве олимпиадной на какой-то этап всесоюзной Олимпиады (Во! Это было еще в СССР!). Ему сказали, что в качестве олимпиадной она не годится, так как ее решение занимает несколько страниц. Так что ваше решение, уважаемый профессор, довольно неочевидно. Тут есть 2 важных момента. Паросочетания (существует функция
...) и принцип Дирихле (существует минимальный элемент
...).
Зато вот "олимпиадное" (в кавычках!) решение хоть и длинное, зато предельно устное. То есть его можно запросто изложить по телефону, не пи
сяша формул.
(устное решение)
Итак, будем интерпретировать строки начальной таблицы как направленные рёбра всех диагоналей единичного куба в
-мерном пространстве. Из каждой вершины куба выходит ровно одно (направленное) ребро. Испортить таблицу – это значит перенаправить ребро в другую вершину куба ("другая" может быть и той же, что и раньше, т.е. противоположной). Теперь рассмотрим всю эту ерунду как направленный граф. Из каждой его вершины что-то выходит. В силу конечности картинки тут есть замкнутый цикл. Он то нам и нужен!
Наблюдение. Можно так испортить таблицу, что такой цикл будет ровно один.