2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




Начать новую тему Ответить на тему
 
 Задача Штейнгауза (двоичный треугольник)
Сообщение11.06.2012, 21:13 


13/06/09
4
В книге Штейнгауза "100 задач" на 48-49 страницах приведена задача, которая на момент издания не имела решения. Она называется "Плюсы и минусы".
Верхняя строка содержит плюсы и минусы. Следующая строка формируется след образом: под двумя одинаковыми знаками стоит "+", под двумя разными стоит "-". И так далее. Таким образом каждая последующая строка будет на один знак меньше предыдущей. Возможно ли для любого n построить треугольник, содержащий одинаковое число плюсов и минусов?
Естественно, что решение может быт найдено только в том случае, если число (n/2)*(n+1) является четным.

Вот, например, ссылка на книгу: http://www.e-reading.org.ua/djvureader. ... adach.html

Посерфив в Сети, ничего не нашел. Может ее уже давно решили, а может и нет) Может есть некие частные решения или что-то в этом роде.

 Профиль  
                  
 
 Re: Задача Штейнгауза (двоичный треугольник)
Сообщение25.03.2016, 21:38 


17/10/08

1313
Задачка, кстати, забавная. Рекомендую. :D . Я решил ее в "детстве" (где-то 1990 году) без компьютера.

Подсказка.
Ответ задачи: да. Доказано построением явного решения для любого (допустимого по модулю 4) n.

Если не получится, могу сделать еще одну подсказку.

P.S. переживать что тема старая не стоит.

 Профиль  
                  
 
 Re: Задача Штейнгауза (двоичный треугольник)
Сообщение02.04.2016, 08:55 
Аватара пользователя


07/01/16
1612
Аязьма
mserg, кажется, я нашел эмпирическое правило построения, правда, доказать пока не возьмусь.
Работает для $n=3,4,7,8$. Очень интересно, совпадает ли конструктивная часть с Вашим решением?

1. Обозначения: занумеруем строки $i=0,1,\ldots ,n-1$ и столбцы $j=0,1,\ldots ,n-i-1$.
Используем $0$ вместо "$+$" и $1$ вместо "$-$". Тогда, операция получения элемента - исключающее или, $a_{i+1,j}=a_{i,j}\oplus a_{i,j+1}$

2. Построение: в каждую строку будем записывать поочередно $0$ и $1$, причем, для каждой строки $i$, только в один столбец $j=i \bmod (n-i)$. Затем, восстановим весь треугольник "снизу вверх", опираясь на записанные $n$ двоичных цифр.

3. Пример для $n=3$: задаем $a_{0,0}=0, a_{1,1}=1, a_{2,0}=0$ и получаем:

$
\begin{tabular}{c}
0 . . \\
. 1\\
0
\end{tabular}
\Rightarrow
\begin{tabular}{c}
0 1 0\\
1 1\\
0
\end{tabular}
$

Аналогично, для $n=8$:

$
\begin{tabular}{c}
0 . . . . . . .\\
. 1 . . . . .\\
. . 0 . . .\\
. . . 1 .\\
0 . . .\\
. . 1\\
0 .\\
1
\end{tabular}
\Rightarrow
\begin{tabular}{c}
0 1 0 0 0 1 0 1\\
1 1 0 0 1 1 1\\
0 1 0 1 0 0\\
1 1 1 1 0\\
0 0 0 1\\
0 0 1\\
0 1\\
1
\end{tabular}
$


-- 02.04.2016, 09:22 --

Эххх, уже сам вижу, что не работает для $n=11$. Возможно, $n=3,4,7,8$ хороши, поскольку имеют вид $2^n, 2^n-1$

 Профиль  
                  
 
 Re: Задача Штейнгауза (двоичный треугольник)
Сообщение02.04.2016, 12:27 


17/10/08

1313
Искать общее решение можно в виде: s+k*T
Здесь
s - некоторое частое решение, т.е. последовательность знаков + и -, которая дает решение задачи
T - "период" - магическая последовательность знаков + и -
k - кратность повторения, т.е. 0, 1, 2, 3, ...
+ - конкатенация последовательностей
* - обозначение кратности k повторения последовательности T
Т.е. добавление любого количества "магических периодов" T справа дает решение.

Можно написать программу, которая будет перебирать s и T, найдет частное решение, и убедится для достаточно большого количества k, что прибавление "периода" T также приводит к решению. Дальше дело техники - нужно выбрать частные решения, покрывающие всю задачу, и потом методом индукции доказать, что прибавление T даст решение для каждого из выбранных частных случаев.

Если решать задачу вручную, то не трудно убедиться, что минимальная длина T равна 12. Затем догадаться, что имеет место периодичность по строкам. Потом догадаться, что количество плюсов и минусов должно в периоде совпадать. Потом увидеть, что 12 есть 6*2, 4*3, 3*4, 2*6, 1*12. Небольшим перебором можно найти полупериод (для случая 2*6):
- - - - + +
Тогда период T может быть таким (12 знаков):
- - - - + +- - - - + +
Продлив последовательность вправо, и выстроив строки ниже, не трудно догадаться, что делать дальше.

 Профиль  
                  
 
 Re: Задача Штейнгауза (двоичный треугольник)
Сообщение02.04.2016, 23:51 
Аватара пользователя


07/01/16
1612
Аязьма
mserg в сообщении #1111408 писал(а):
Искать общее решение можно в виде: $s+kT$

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

 Профиль  
                  
 
 Re: Задача Штейнгауза (двоичный треугольник)
Сообщение03.04.2016, 02:52 
Аватара пользователя


07/01/16
1612
Аязьма
mserg в сообщении #1111408 писал(а):
Тогда период $T$ может быть таким (12 знаков):
$- - - - + + - - - - + +$

Погонял все таки немножко программно, действительно, такое $T$ является решением для $n=12$, но, $T+T$, если не напутал, уже не решение для $n=24$, там получается минусов на два меньше, чем положено. Получается, нельзя взять какое попало $s$ ? (как в данном случае, $s=T$).

 Профиль  
                  
 
 Re: Задача Штейнгауза (двоичный треугольник)
Сообщение03.04.2016, 11:25 


17/10/08

1313
Насколько я помню, указанный выше период подходит не для всех вариантов (по модулю 12). Тем более, взять s=T просто так нельзя.
Можно s составлять из периода T, но перебирать первые 4 знака - тогда периодичность не нарушится. Т.е. n составить полностью из знаков периода T и перебрать 4 левых знака.

 Профиль  
                  
 
 Re: Задача Штейнгауза (двоичный треугольник)
Сообщение04.04.2016, 23:24 
Аватара пользователя


07/01/16
1612
Аязьма
Нашел (наверное, очевидную) вещь, задача эквивалентна эволюции конечного автомата, заданного rule 60.
Он аддитивный и "функция Грина" из одной единички дает треугольник Серпинского, что позволяет вычислять $a_{i,j}=\sum_{k=0}^i C_i^k a_{0,j+k} \bmod 2$

 Профиль  
                  
 
 Re: Задача Штейнгауза (двоичный треугольник)
Сообщение08.04.2016, 19:04 
Аватара пользователя


07/01/16
1612
Аязьма
mserg, добрый день! Я, кажется, воспроизвел Ваше удивительное решение, по крайней мере, частично.
Например, $T=111100111100$, по всей видимости, работает для всех $n$, кроме $n=3\bmod 12$ (никакое $abc111100111100$ не является решением). А, для $n=4\bmod 12$, частное решение $s=0101$ подходит для любого количества повторений $T$ (по факту, проверял программно для $290$ и менее повторений).
Но, скажу честно, пока не разобрался, как и почему работает эта магия :-)
Получается, за ней стоит какое-то нетривиальное утверждение по поводу четности наборов биномиальных коэффициентов?
Буду Вам очень признателен за более подробное пояснение, например, для того же случая $0101+k\cdot 111100111100$.

P.S.: я на эту задачу "подсел", и сам пытался искать другие варианты решений (их ведь очень много, скажем, $5160$ штук для $n=16$). Например, состоящих из минимального количества единиц (предположение, что это $m$ для $n=4m,4m-1$), или, состоящих только из блоков $01$ и $10$, или, состоящих из решений для меньших $n$ и т.д. Но, все эти "мелкоблочные" гипотзы неизменно ломались при довольно скромных $n\le 32$.

 Профиль  
                  
 
 Re: Задача Штейнгауза (двоичный треугольник)
Сообщение09.04.2016, 14:40 


17/10/08

1313
Ну, подсказки уже все сделаны.
Могу еще раз повториться...

Решение для (k+1) получается добавлением T справа к решению k (положим, что k достаточно большое).
Нетрудно заметить, что при этом добавляемое количество знаков + и - минус суммарно по строкам 1 и 2 равно (в нашем случае равно 12).
То же самое для строк 3 и 4 - добавляемое количество знаков + и - равно 12.
И т.д. - это справедливо за исключением нижней части треугольника, которая зависит от s.
Если s состоит также из T, за исключением 4-х левых знаков, то добавляемые знаки в нижних строках будут одними и теми же что при получение решения (k+1) из решения k, (k+2) из решения (k+1), и т.д. - это дает возможность для индуктивного доказательства решения для любого k.

Кажется так, надеюсь ничего не попутал...

Припоминаю, что для полного решения использовал два разных T (заметим, что циклический сдвиг, зеркальное отражение, период из второй строчки, получаемой из T, у меня считались одинаковыми). Таким образом, нужно найти подходящий период для случая, для которого период ----++----++ не подходит. Он должен удовлетворять требованиям
* Период по горизонтали - 12
* Период по вертикали - 4 (ну, или в частном случае, 2)
* Суммарное количество знаков периодов + и - по 4-м смежным строкам должно совпадать (т.е. 12*4/2 = 24).

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 10 ] 

Модераторы: Модераторы Математики, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: YandexBot [bot]


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group