ОФФ Задачка для 6-го класса

Форум 1С: Одинэс.Ру

Найти!

ОФФ Задачка для 6-го класса

Путевый лист
10.03.2009 - 07:37
Даны три кучки камней
Всегда ли можно за конечное число ходов уравнять какие-либо две кучки
Ход: переложить с одной кучки столько же сколько во второй
Вот такая задача!!!
К списку тем 1 2 3 4 > К списку форумов

Интересные темы

odines.ru
28.04.2024 - 19:05
Смотри также:
ОФФ. Чего бы себе на 23 февраля в подарок попросить? (чтобы мелочь, а приятно)
ОФФ: Человек укушенный бухгалтером сам становится бухгалтером...
Открытие файла Excel с отключением макроса.

Re: ОФФ Задачка для 6-го класса

iogri
171 - 16.03.2009 - 07:26
Привет всем.
Алгоритм в (140) - это почти решение:
Имеем три кучки камней с количествами (Кучка1)A > (Кучка2)B > (Кучка3)C
Очевидно, что можно записать B = D + k*C (деление с остатком)
Алгоритм такой:
Представим k в двоичном виде (например [100101]). В квадратных скобках будем записывать двоичные числа
Тогда количество камней в кучках запишется так (количество в кучке 1 нас не интересует, важно, что там камней больше чем в кучке 2):
Кучка 1 Кучка 2 Кучка 3
         D + [100101] * C [1] * C
Если последний разряд в числе k = 1, то удваиваем кучку 3 за счет кучки 2:
Кучка 1         Кучка 2 Кучка 3
        D + [100100] * C [10] * C
Если последний разряд в числе k = 0, то удваиваем кучку 3 за счет кучки 1:
Кучка 1 Кучка 2 Кучка 3
         D + [100100] * C [100] * C
Если последний разряд в числе k = 1, то удваиваем кучку 3 за счет кучки 2:
Кучка 1 Кучка 2 Кучка 3
D + [100000] * C [1000] * C
И так далее…
В итоге, получим позицию:
Кучка 1 Кучка 2 Кучка 3
D + [000000] * C [100000] * C
Итак, мы добились следующего: в кучке 2 камней стало меньше, чем было изначально в кучке 3. То есть, минимальное количество во всех трех кучках уменьшилось.
Переобозначаем кучки, чтобы прийти к ситуации (Кучка1)A > (Кучка2)B > (Кучка3)C и повторяем алгоритм.
В итоге получим, что количество в кучке 2 = 0 (после каждого применения алгоритма оно уменьшается). То есть, на предыдущем шаге мы удвоили кучку 3 за счет кучки 2. А это и было «решение задачи».
 

Re: ОФФ Задачка для 6-го класса

iogri
172 - 16.03.2009 - 07:33
блин, слетели табуляторы и стало нечитаемо :(
дублирую:
Имеем три кучки камней с количествами (Кучка1)A > (Кучка2)B > (Кучка3)C
Очевидно, что можно записать B = D + k*C (деление с остатком)
Алгоритм такой:
Представим k в двоичном виде (например [100101]). В квадратных скобках будем записывать двоичные числа
Тогда количество камней в кучках запишется так (количество в кучке 1 нас не интересует, важно, что там камней больше чем в кучке 2):
Кучка 1       Кучка 2                 Кучка 3
              D + [100101] * C        [1] * C
Если последний разряд в числе k = 1, то удваиваем кучку 3 за счет кучки 2:
Кучка 1       Кучка 2                 Кучка 3
              D + [100100] * C        [10] * C
Если пред-последний разряд в числе k = 0, то удваиваем кучку 3 за счет кучки 1:
Кучка 1       Кучка 2                 Кучка 3
              D + [100100] * C        [100] * C
Если пред-пред-последний разряд в числе k = 1, то удваиваем кучку 3 за счет кучки 2:
Кучка 1       Кучка 2                 Кучка 3
              D + [100000] * C        [1000] * C
И так далее…
В итоге, получим позицию:
Кучка 1       Кучка 2                 Кучка 3
              D + [000000] * C        [1000000] * C
Итак, мы добились следующего: в кучке 2 камней стало меньше, чем было изначально в кучке 3. То есть, минимальное количество во всех трех кучках уменьшилось.
Переобозначаем кучки, чтобы прийти к ситуации (Кучка1)A > (Кучка2)B > (Кучка3)C и повторяем алгоритм.
В итоге получим, что количество в кучке 2 = 0 (после каждого применения алгоритма оно уменьшается). То есть, на предыдущем шаге мы удвоили кучку 3 за счет кучки 2. А это и было «решение задачи».
 

Re: ОФФ Задачка для 6-го класса

roma n
173 - 16.03.2009 - 07:48
"важно, что там камней больше чем в кучке 2" - загвоздка в том, что это утверждение после нескольких удваиваний (из кучки 3) может оказаться ложным и следующий шаг алгоритма невыполним

Re: ОФФ Задачка для 6-го класса

iogri
174 - 16.03.2009 - 08:05
2(173)
На всех шагах алогритма (кроме последнего) "кучка 2" >= "кучки 3". "кучка 2" в ходе выполнения алгоритма не растет, значит в "кучку 3" будет добавлено камней не больше, чем было изначально в "кучке 2", а значит меньше, чем было в "кучке 1". На последнем шаге алогритма "кучка 3" удваивается за счет "кучки 2". Все нормально, камней хватает.

Re: ОФФ Задачка для 6-го класса

roma n
175 - 16.03.2009 - 08:26
(174) в (173) мало-мало идейку недопонял :)
Стройненько.

Интересные темы

odines.ru
28.04.2024 - 19:05
Смотри также:
Склеить несколько DBF файлов
Нужен совет специалистов по выбору платформы
Наше предприятие разделили на 2 - как быть с 1С?

Re: ОФФ Задачка для 6-го класса

Путевый лист
176 - 16.03.2009 - 09:13
(Всем) Спасибо. Не оскудел Форум креативом и желанием разобраться,решить и добить задачу

Re: ОФФ Задачка для 6-го класса

КвазиСпец
177 - 16.03.2009 - 09:44
Тема не раскрыта!
Никто не требовал найти алгоритм решения!
Требовалось всего-то доказать возможность уравнивания за конечное число ходов!

Re: ОФФ Задачка для 6-го класса

iogri
178 - 16.03.2009 - 10:20
2(177)
Для доказательства возможности решения достаточно предложить алгоритм построения этого решения (сходящийся за конечное количество ходов).
Доказательства такого рода тоже применяются в математике.
Так что, задача решена.

Re: ОФФ Задачка для 6-го класса

Путевый лист
179 - 16.03.2009 - 10:53
(Всем) Пока все-таки задачка не получила решения на уровне 6-го класса
И тем не менее похоже что алгоритм построения решения, предложенный iogri - ошибок не содержит и как-то можно попытаться обосновать его на уровне 6-го класса

Re: ОФФ Задачка для 6-го класса

roma n
180 - 21.04.2009 - 09:39
179-Путевый лист >
Ответы так пока и не появились?
К списку тем 1 2 3 4 > К списку форумов

Добавить новое сообщение

Ваше имя:
Тема сообщения:
Сообщение:
« Если не вошел в форум - не видно разделов. Может правильно, а по-мне, так лучше-бы присоединить.. 1C и КПК »
© 2009 Форум 1С: Одинэс.Ру