2014 dxdy logo

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

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


Правила форума


Посмотреть правила форума



Начать новую тему Ответить на тему
 
 Числа в вершинах правильного десятиугольника
Сообщение04.11.2017, 10:13 
Аватара пользователя


01/12/11

8634
Расположите в вершинах правильного десятиугольника числа от 1 до 10 так, чтобы для любых двух соседних чисел их сумма была равна сумме двух чисел, им противоположных (симметричных относительно центра окружности, вписанной в этот десятиугольник).

У меня получилось 1, 10, 2, 9, 3, 6, 5, 7, 4, 8.
Правильный ответ: 1, 4, 5, 8, 9, 2, 3, 6, 7, 10.

Хотелось бы узнать, сколько всего существует способов это сделать.

 Профиль  
                  
 
 Re: Числа в вершинах правильного десятиугольника
Сообщение04.11.2017, 12:08 
Заслуженный участник


20/08/14
11063
Россия, Москва
Всего 48 вариантов симметричных с точностью до поворота. И 24 если учесть зеркальность.
Интересно что около 10 не встречается 6.

 Профиль  
                  
 
 Re: Числа в вершинах правильного десятиугольника
Сообщение04.11.2017, 12:20 
Аватара пользователя


01/12/11

8634
Dmitriy40
Как сосчитали?

 Профиль  
                  
 
 Re: Числа в вершинах правильного десятиугольника
Сообщение04.11.2017, 12:42 
Заслуженный участник


20/08/14
11063
Россия, Москва
Ktina
Начал руками выписывать какие числа допустимы около 10, выписал все тройки чисел с 10 в центре (ну и противоположные соответственно), потом надоело дописывать перебор ещё пары цифр, нашёл готовую программу генерации всех $9!$ перестановок 9-ти элементов (десятку взял за фиксированное начало, общности это не нарушает) и добавил проверку на суммы. Выхлоп программы составил 48 строк с конкретными перестановками. Снова руками убил зеркальные (конечно очевидно что их ровно половина, но захотелось и это прямо проверить). Можно было и руками довыписывать всё (думаю за пару часов справился бы), но лень, программой проще.

(Вот все 24 возможные перестановки)

10,1,4,5,8,9,2,3,6,7
10,1,4,7,6,9,2,3,8,5
10,1,6,3,8,9,2,5,4,7
10,1,6,7,4,9,2,5,8,3
10,1,7,3,9,5,6,2,8,4
10,1,7,4,8,5,6,2,9,3
10,1,8,2,9,5,6,3,7,4
10,1,8,3,6,9,2,7,4,5
10,1,8,4,7,5,6,3,9,2
10,1,8,5,4,9,2,7,6,3
10,1,9,2,8,5,6,4,7,3
10,1,9,3,7,5,6,4,8,2
10,2,6,3,9,5,7,1,8,4
10,2,6,4,8,5,7,1,9,3
10,2,8,1,9,5,7,3,6,4
10,2,9,1,8,5,7,4,6,3
10,3,2,5,8,9,4,1,6,7
10,3,2,7,6,9,4,1,8,5
10,3,6,1,8,9,4,5,2,7
10,3,6,2,9,5,8,1,7,4
10,3,7,1,9,5,8,2,6,4
10,3,8,1,6,9,4,7,2,5
10,5,2,3,8,9,6,1,4,7
10,5,4,1,8,9,6,3,2,7

 Профиль  
                  
 
 Re: Числа в вершинах правильного десятиугольника
Сообщение04.11.2017, 13:19 
Аватара пользователя


01/12/11

8634
Dmitriy40
Большое спасибо!

(Оффтоп)

А код Вашей программы - совершенно секретная информация?

 Профиль  
                  
 
 Re: Числа в вершинах правильного десятиугольника
Сообщение04.11.2017, 13:23 
Заслуженный участник


20/08/14
11063
Россия, Москва
Нет, конечно не секретная, но моего там одна строка.
код: [ скачать ] [ спрятать ]
Используется синтаксис Pascal
procedure Swap(var a,b:byte); {обмен переменных}
var c:byte;
begin c:=a;a:=b;b:=c end;

type Pere=array [byte] of byte;
var     N,i:byte;
        x:Pere;
        Yes:boolean;

procedure Next(var x:Pere;var Yes:boolean);
        var i,j:byte;
begin
        i:=N-1;
        {поиск i}
        while (i>0)and(x[i]>x[i+1]) do dec(i);
        if i>0 then
        begin
        j:=i+1;
        {поиск j}
        while (j<N)and(x[j+1]>x[i]) do inc(j);
        Swap(x[i],x[j]);
        for j:=i+1 to (N+i) div 2 do Swap(x[j],x[N-j+i+1]);
        Yes:=true
        end
        else Yes:=false;
end;

begin
        N:=9;
        for i:=1 to N do x[i]:=i;
        repeat
                if (10+x[1] = x[5]+x[6]) and (x[1]+x[2] = x[6]+x[7]) and (x[2]+x[3] = x[7]+x[8]) and (x[3]+x[4] = x[8]+x[9]) and (x[4]+x[5] = x[9]+10) then begin //Вот эта строка моя, остальное честно свистнуто откуда-то с инета
                        write('10');for i:=1 to N do write(',',x[i]);writeln;
                end;
                Next(x,Yes)
        until not Yes;
end.

 Профиль  
                  
 
 Re: Числа в вершинах правильного десятиугольника
Сообщение04.11.2017, 20:59 
Заслуженный участник


11/05/08
32166
Dmitriy40 в сообщении #1262127 писал(а):
Всего 48 вариантов симметричных с точностью до поворота. И 24 если учесть зеркальность.

Это странно. Их должно быть двадцать четыре, т.е. четыре факториал, среди которых есть и все зеркально симметричные друг другу.

(В качестве подсказки предлагается попытаться решить аналогичную задачку для восьми идущих подряд чисел.)

 Профиль  
                  
 
 Re: Числа в вершинах правильного десятиугольника
Сообщение04.11.2017, 22:08 
Заслуженный участник


20/08/14
11063
Россия, Москва
Ну я же привёл все 24 варианта, зеркальные к ним будут ещё 24, легко проверить. Вроде повторов среди них нет.

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

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



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

Сейчас этот форум просматривают: нет зарегистрированных пользователей


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

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