Местонахождение: Логика поиска:
«Или»   «И»
Логин  
Пароль  
Забыли пароль
Регионы

Олимпийские хиты. Часть 3

        Когда я диктовал своей хорошей знакомой, учительнице высшей категории, заслуженной учительнице Кубани по телефону числа окончательного решения, то она лишь удивлённо восхищалась! Сам по себе набор цифр казалось, не вписывается ни в какую разумную логическую схему. Она тут же спросила:

- Ну и как ты это получил?

- А это уже, извини, не по телефону!

Речь шла об одной из олимпиадных заданий ВЗМШ МГУ 2006 г.

 

Задача. Составить такие четыре тройки целых неотрицательных чисел, что любое число от 1 до 81 можно представить в виде суммы четырёх чисел, взятых по одной из каждой тройки.

       Когда к тебе – простому частному преподавателю, обращаются столь уважаемые авторитеты современного образования, это, конечно, мгновенно окрыляет и придаёт уверенность и силы. Но когда задача не получается с лёту, когда просто сбиваешься на «тупой» перебор вариантов, не дающий ощутимых результатов, тогда легко впасть в отчаяние и уныние. Только позже осознаешь, что любой поиск, так, или иначе, пробивает шахту в подкорку. И только в награду за желание решить и за затраченные усилия Бог посылает тебе яркую, простую ключевую идею. А дальше – дело техники. Дальше ты уже можешь спокойно развивать эту идею, наслаждаясь  не блужданием в потёмках, а вполне осознанным, логичным, творческим поиском. Ловлю себя на мысли о том, как часто уже писал в предыдущих тетрадях, примерно  то же самое. Ничто не ново под Луной! И как же приятно спокойно, не торопясь записывать свои выстраданные, иногда просто вымученные решения! И не важно, что кто-нибудь над этими размышлениями просто посмеётся. Для кого-то эта задача будет не стоящим внимания пустяком. Важно, что сам ты о ней думаешь. И важно верить, что объяснение решения обязательно кому-нибудь пойдёт на пользу!

       Пора рассказать и о ключевой идее. Рассмотрим прямоугольную таблицу 4*3 (4 строки, 3 столбца). Выбор числа из каждой тройки будим обозначать цифрой 1 в соответствующей строке. Например:

1

   
 

1

 
   

1

 

1

 

Это означает, что из первой тройки выбрано первое число, из второй – второе, из третьей – третье, из четвёртой – второе. То есть в любой момент в каждой строке единицей занята лишь одна клетка. Зададим себе простой, детский вопрос: Сколько существует комбинаций таких наборов единиц? Каждую единицу, в каждой строке можно, независимо от других строк, выбрать тремя способами. Следовательно, число всех возможных комбинаций равно: 3*3*3*3 = 34 = 81. Но ведь 81 – это и есть наибольшее число, которое нужно представить в виде суммы в данной задаче! Представление чисел в таблице и ответ на вопрос – это, в данном случае и есть основная, ключевая идея исследовательского поиска. Теперь самое главное –  найти способ последовательного перечисления каждой из 81 комбинаций. И когда такой способ нашёлся, то составление таблицы прошло просто, логично и убедительно. Как перечислить все комбинаций можно понять из следующей таблицы. Сначала передвигаем последовательно единицу в нижней строке. Как только она доходит до края, то на следующем шаге она возвращается в начало строки, а единица следующей, верхней строки перемещается на одну клетку вправо. После этого снова передвигается нижняя единица, пока не дойдет до края. И так далее, до перечисления всех комбинаций из 81. Числу 81 будет соответствовать заполненный единицами последний, третий столбик.

1

 

2

 

3

 

4

 

5

 

6

 

7

1

 

 

1

 

 

1

 

 

1

 

 

1

 

 

1

 

 

1

 

 

1

 

 

1

 

 

1

 

 

1

 

 

1

 

 

1

 

 

1

 

 

1

 

 

1

 

 

1

 

 

 

1

 

 

1

 

 

1

 

 

 

1

1

 

 

 

1

 

 

 

1

1

 

 

 

1

 

 

 

1

1

 

 

Начнём последовательное заполнение таблицы троек чисел. Число 1, естественно равно 1 + 0 + 0 + 0. Далее: 2 = 1 + 0 + 0 + 1; 3 = 1 + 0 + 0 + 2; 4 = 1 + 0 + 3 + 0. Тогда, первые несколько клеток таблицы заполняются следующим образом.

 

Таблица решения задачи

 

1

 

 

0

   

0

3

 

0

1

2

Эта таблица позволяет однозначно представить в виде суммы числа от 1 до 6. Причём 6 = 1 + 0 + 3 + 2. Тогда клетку третьей строки и третьего столбца или, коротко, клетку (3;3), надо заполнить так, чтобы получить представление числа 7. Мы этого добьёмся, поставив в клетку (3;3) число 6. Тогда 7 = 1 + 0 + 6 + 0; 8 = 1 + 0 + 6 + 1; 9 = 1 + 0 + 6 + 2. Теперь, чтобы получить представление в виде суммы числа 10, надо клетку (2;2) заполнить числом 9, тогда: 10 = 1 + 9 + 0 + 0. Легко убеждаемся в том, что следующее заполнение таблицы позволяет сделать однозначное  представление в виде суммы любого натурального числа от 1 до 18.

 

Таблица решения задачи

 

1

   

0

9

 

0

3

6

0

1

2

18 = 1 + 9 + 6 + 2. Пора заполнить клетку (2;3). Следующее число 19, поэтому в клетку (2;3) ставим 18, тогда 19 = 1 + 18 + 0 + 0.

 

Таблица решения задачи

 

1

   

0

9

18 

0

3

6

0

1

2

Наибольшее число, которое можно представить в виде суммы с помощью заполненной на данный момент таблицы, равно: 1 + 18 + 6 + 2 =  27. Поэтому клетку (1;2) заполняем числом 28, тогда 28 = 28 + 0 + 0 + 0. В результате мы сможем однозначно представить в виде требуемой суммы уже любое натуральное число от 1 до 28 + 18 + 6 + 2 = 54. Поэтому в клетку (1;3) ставим число 55 и задача полностью решена! Окончательная таблица имеет следующий вид:

 

Таблица решения задачи

 

1

 28

55 

0

9

18 

0

3

6

0

1

2

 

Но это ещё далеко не всё! Теперь, поумневшим усвоенными идеями читателям, надеюсь, не составит труда решить следующую задачу:

Составьте такие четыре четвёрки целых неотрицательных чисел, что любое число от 1 до 256 можно представить в виде суммы четырёх чисел, взятых по одной из каждой четвёрки.

Кроме того, решение данного задания даёт отличный повод для знакомства с функцией «Сумма Произведений» из процессора EXCEL, играющая важную роль в решении  задач оптимизации.

Рис. 1. Интерактивная версия решения задачи. Фрагмент «Число по коду».

На рис. 1. показан фрагмент интерактивной версии решения данной задачи. Помещая в массив (E5:G8) коды чисел, в клетке D11 получаем значение числа от 1 до 81. Это число получается как сумма произведений соответствующих значений в массивах (A5:C8) и (E5:G8). На другом листе решается обратная задача – восстановление кода по данному числу. Для этого приходится воспользоваться операцией «Поиск решения» и, к сожалению, программа для некоторых чисел даёт отказ в поиске. Но это уже чисто технические детали.

Рис. 2. Интерактивная версия задачи. Фрагмент «Код по числу».

Написать письмо О проекте Помощь Регионы Последние запросы
При любом использовании материалов сайта обязательна гиперссылка на сайт "Репетитор".
По всем вопросам обращайтесь к администрации сайта
Разработка и Дизайн компании Awelan
Рейтинг@Mail.ru Rambler's Top100