Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 17.05.2011, 14:38   #1
sover
Пользователь
 
Регистрация: 17.02.2011
Сообщений: 13
По умолчанию Дискретная математика

Есть набор (1,5)(1,6)(5,5)(2,4)(2,4) не может быть размещён в строке.Однако если добавить (2,5), то полученный набор можно можно разложить в следующей строке6,1)(1,5)(5,5)(5,2)(2,4)(4, 2).

Задача состоит в том , чтобы написать программу, которая для данного набора домино найдёт дополнительный набор, чтобы строка могла быть размещена с обоими объединёнными наборами блоков.
Сумма чисел дополнительного набора должна быть минимальна.
Однако если вместо части (2,5) с суммой 7, добавить две части (1,2) с полной суммой 6 то можно разложить так:
(5,5)(5,1)(1,2)(2,4)(4,2)(2,1)(1,6) <-вот это и надо получить.

Чёт я не очень представляю как её делать, подскажите алгоритм, или в какую сторону копать.

З.Ы. язык си++ =)

Последний раз редактировалось sover; 18.05.2011 в 10:51.
sover вне форума Ответить с цитированием
Старый 18.05.2011, 03:05   #2
sover
Пользователь
 
Регистрация: 17.02.2011
Сообщений: 13
По умолчанию

Помогите хотя бы с алгоритмом, или где поискать.
sover вне форума Ответить с цитированием
Старый 18.05.2011, 12:09   #3
KobolD
Форумчанин
 
Регистрация: 10.06.2010
Сообщений: 239
По умолчанию

А почему у тебя в колоде повторяющиеся доминоошки есть (2,4)?
Видимо надо создать функцию которая принимает два параметра: первый текущая "доминошка" и массив не использованных доминошек, функция ищет в массиве след доминошку и рекурсивно себя вызывает. По окончанию работы функции должно получиться три параметра: значение первого числа в последовательности, значение последнего числа последовательности, массив не использованных доминошек.
В основной программе запускаеш вышеописаную функцию с первой доминошкой и массивом из всех остальных, потом снова запускаешь ее же с параметрами: первой доминошкой из неиспользованной последовательности и массивом неиспользованных доминошек без первой.
В результате у тебя должно получиться четыре числа: начало и конец первой последовательности и начало и конец второй последовательности. Из них надо найти минимальную сумму - это и будет ответ.
Чтобы слова не расходились с делом, нужно молчать и ничего не делать.
KobolD вне форума Ответить с цитированием
Старый 18.05.2011, 13:16   #4
sover
Пользователь
 
Регистрация: 17.02.2011
Сообщений: 13
По умолчанию

Цитата:
Сообщение от KobolD Посмотреть сообщение
А почему у тебя в колоде повторяющиеся доминоошки есть (2,4)?
так в задании описано что могут быть и повторяющиеся
sover вне форума Ответить с цитированием
Старый 18.05.2011, 13:22   #5
sover
Пользователь
 
Регистрация: 17.02.2011
Сообщений: 13
По умолчанию

KobolD алгоритм который ты предложил не подходит, если делать так как ты говоришь то получится примерно следующее (6,5) (2,2) между ними можно поставить (2,5).

Однако если вместо части (2,5) с суммой 7, добавить две части (1,2) с полной суммой 6 то можно разложить так:
(5,5)(5,1)(1,2)(2,4)(4,2)(2,1)(1,6) <-вот это и надо получить.
вот в этом и заключается проблема, в задании говорится что сумма должа быть как можно меньше.
sover вне форума Ответить с цитированием
Старый 27.05.2011, 08:05   #6
sover
Пользователь
 
Регистрация: 17.02.2011
Сообщений: 13
По умолчанию

неужели никто с подобным не сталкивался ?
sover вне форума Ответить с цитированием
Старый 27.05.2011, 10:14   #7
Biggs
Пользователь
 
Регистрация: 15.07.2010
Сообщений: 74
По умолчанию

Так у тебя же есть алгоритм-если есть две домино со значениями (A,B)-(C,D) и A,B,C,D не совпадают
то надо добавить (B,1),(1,C) или (B,C) при этом B,C должны быть минимумами в своих костяшках
Естественно надо посчитать, что больше и добавить меньшее
Biggs вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
дискретная математика. 13xXx13 Помощь студентам 1 26.03.2011 12:51
Дискретная математика ttjke Фриланс 3 11.10.2010 20:41
Дискретная математика Viteef Фриланс 4 22.06.2010 23:39
Дискретная математика azmega Фриланс 2 19.05.2010 14:52
Дискретная математика А.С.О Помощь студентам 1 24.06.2009 18:56