![]() |
|
![]() ![]() ![]() |
|
spamoney |
|
|||
Новичок Профиль Группа: Участник Сообщений: 28 Регистрация: 8.7.2008 Репутация: нет Всего: нет |
Здравствуйте, помогите составить алгоритм для следующей задачки:
Есть следующая таблица: Y/X 100 300 900 600 100 700 - - - - - 300 - - - - - 100 - - - - - 600 - - - - - 300 - - - - - Необходимо вместо прочерков поставить 9 цифр (не меньше, не больше), таким образом что бы сумма каждой строки по X соответсвовала уже извесному (начальному) числу по X, аналогично и по Y т.е пример: Y/X 100 300 900 600 100 700 - 100 600 - - 300 100 - 200 - - 100 - - 100 - - 600 - 200 - 400 - 300 - - - 200 100 Смотрим соответсвие: Y1=700=100+600 Y2=300=100+200 .... X3=900=600+200+100 X4=600=400+200 .... Помогите пожалуйста составить алгоритм который бы вывел все возможные варианты расстановки 9 чисел, а то я уже всю голову сломал... |
|||
|
||||
Akina |
|
|||
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 20 Всего: 454 |
Ну так это же тривиальное решение системы линейных уравнений.
-------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
_Y_ |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1651 Регистрация: 27.11.2006 Репутация: 8 Всего: 34 |
Akina, мне много лет назад понадобилось решить систему 16 линейных уравнений. Оказалось не так просто - машинная ошибка съедала все.
Судя по даным, они целочисленные. Может это можно использовать? -------------------- Я вот в этом поучаствовал: http://sbor-nik.appspot.com/kick.jsp?id=sbor5737960678883328 (на правах саморекламы:) |
|||
|
||||
Akina |
|
|||
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 20 Всего: 454 |
![]() При наличии гарантии, что решение существует, и оно целочисленное - можно. -------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
_Y_ |
|
||||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1651 Регистрация: 27.11.2006 Репутация: 8 Всего: 34 |
Если вдаваться в детали, то я пробовал разные методы. Помню брал Гаусса с разной точностью, итерационный, еще уйму каких-то. Давно было. Проблема же заключается в том, что чем больше линейных уравнений в системе, тем больше, для получения достоверного результата, должны разниться известные величины. А у меня разброс между ними был в пределах процентов 10-20 только (сколь помню). Ну, например, уравнения с такого рода коэффициентами
ни один алгоритм не соглашался воспринимать как достоверно различающиеся. Как я понял из первого поста, известные значения в заданной таблице могут быть любыми. Возможно и размер матрицы может быть не только 5х5. Поэтому и сомнения у меня возникли. -------------------- Я вот в этом поучаствовал: http://sbor-nik.appspot.com/kick.jsp?id=sbor5737960678883328 (на правах саморекламы:) |
||||
|
|||||
Фантом |
|
|||
![]() Вы это прекратите! ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1516 Регистрация: 23.3.2008 Репутация: 2 Всего: 49 |
Скорее всего, Вы просто наткнулись на систему с близким к нулю определителем матрицы. А это действительно проблемный случай, причем при любом размере системы. |
|||
|
||||
_Y_ |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1651 Регистрация: 27.11.2006 Репутация: 8 Всего: 34 |
Фантом, именно. Проблема в том, что чем больше размер системы, тем больше этот самый эпсилон, определяющий близость определителя к нулю для данного вычислительного метода при данной машинной ошибке.
-------------------- Я вот в этом поучаствовал: http://sbor-nik.appspot.com/kick.jsp?id=sbor5737960678883328 (на правах саморекламы:) |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Алгоритмы" | |
|
Форум "Алгоритмы" предназначен для обсуждения вопросов, связанных только с алгоритмами и структурами данных, без привязки к конкретному языку программирования и/или программному продукту.
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, maxim1000. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Алгоритмы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |