|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
05.12.2014, 10:15 | #1 |
Новичок
Джуниор
Регистрация: 05.12.2014
Сообщений: 1
|
Задача на PL/SQl
Добрый день, есть такая задача:
В таблице содержится информация о произвольном наборе косточек домино (левое число косточки, правое число косточки). Создать программу для определения списка “рыбных” ситуаций (т.е. ситуаций, когда остается одна или более косточек исходного набора, которые некуда положить) и количества таких ситуаций. Например, если в таблице содержится информация о наборе из трех косточек: левое число косточки правое число косточки 2 0 2 6 1 5 то список рыбных ситуаций: (6,2) -> (2,0) Осталась кость (1,5) (1,5) Остались кости (2,6) , (2,0) Количество рыбных ситуаций: 2 Примечание: программа должна предусматривать проверку правильности заполнения таблицы. Срок сдачи до 20 декабря, в плане цены готов к переговорам) |
05.12.2014, 11:31 | #2 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
я бы взялся, но алгоритм решения пока не очень себе представляю.
Надо будет погуглить, наверняка эта задача уже где-то решалась! |
05.12.2014, 14:19 | #3 |
Новичок
Джуниор
Регистрация: 02.12.2013
Сообщений: 0
|
скайп inbarinov, готов дерзнуть. Однако нужны детали - нужно прям запросом(если конечно вообще это возможно), или можно хранимой процедурой?
|
05.12.2014, 15:37 | #4 |
Новичок
Джуниор
Регистрация: 05.12.2014
Сообщений: 1
|
Нужно как раз НЕ запросом)
Я делаю эту задачу по такому алгоритму, создаю 3 индексных таблицы, в 1 записываю костяшки(отдельно право и лево) и номер вершины, во 2 записываю просто костяшки(право и лево), в 3 записываю номер костяшки из первой таблицы и посищенность(тоесть если костяшка уже использована, то записываю 1, если нет то 0). Потом начинается сам перебор, внешний цикл перебирает начальные вершины(костяшки), внутренний перебирает вершины из второго массива, если есть совпадение, то начинает сравниваться уже эта вершина со всеми остальными, если весь второй массив перебран, то возвращаемся по порядку вершины на 1 назад и ищем вершины, которые ещё не использовались, но возможны для использования(например была такая комбинация 02-26-63, а возможно ещё и 02-26-61, и нам как раз и надо найти 61) и вот тут и начинается загвоздка, ведь если есть такая ситуация где у костяшки есть 3 или более продолжения, причем одно или несколько из них использованы в предыдущей комбинации, то мне никак не дойти до последнего продолжения, тоесть до того, которое стоит самым последним во второй индексной таблице. Вообщем как это победить не знаю, и голова уже не варит( а сдавать надо. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
задача по SQL | Mcduff | Помощь студентам | 2 | 29.05.2014 11:06 |
Задача на sql | oleg2012g | SQL, базы данных | 3 | 22.05.2013 10:42 |
Задача по SQL | Соул | Помощь студентам | 1 | 08.10.2011 20:43 |
Задача по SQL | Сергей1_1 | Фриланс | 0 | 04.01.2011 00:10 |
Задача по SQL | gotex | SQL, базы данных | 11 | 23.12.2010 17:52 |