Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Помогите срочно решить задачу на тему : динамическое программирование

14K
17 ноября 2005 года
Den_Bogd
2 / / 16.11.2005
Помогите написать программу. Я ее как бы решил, но у меня возникает проблема при увеличении диапазона и мои переменные не способны хранить такое большое число. Переменные описаны типом Real.
Вот задача:

Дан фрагмент кубической кристаллической решетки с длиной ребра N. Очевидно, что кратчайший путь из одной вершины куба в противоположную, проложенный по ребрам решетки, имеет длину 3*N (на русинке приведен пример одного такого маршрута для N = 2). Требуется написать программу, определяющую количество таких маршрутов. Для N=2 количество маршрутов равно 90. N <= 100

:???:
276
24 ноября 2005 года
Rebbit
1.1K / / 01.08.2005
Цитата:
Originally posted by Den_Bogd
Помогите написать программу. Я ее как бы решил, но у меня возникает проблема при увеличении диапазона и мои переменные не способны хранить такое большое число. Переменные описаны типом Real.
Вот задача:

Дан фрагмент кубической кристаллической решетки с длиной ребра N. Очевидно, что кратчайший путь из одной вершины куба в противоположную, проложенный по ребрам решетки, имеет длину 3*N (на русинке приведен пример одного такого маршрута для N = 2). Требуется написать программу, определяющую количество таких маршрутов. Для N=2 количество маршрутов равно 90. N <= 100

:???:


Дай код пожалуйста, а там придумаем чтото. :)
Интересно в каком порядке Ты вершини проходил.

14K
24 ноября 2005 года
Den_Bogd
2 / / 16.11.2005
Цитата:
Originally posted by Rebbit
Дай код пожалуйста, а там придумаем чтото. :)
Интересно в каком порядке Ты вершини проходил.


Количество кратчайших путей в кубе из1,1 это сумма количества кратчайших путей из всех предшествующих вершин, т.е. допустим массив квадратной матрици, в котором в ячейки 1,1 имеем число 1, а в последующих ячейках хранится информация о количества кратчайших путей из 1,1 в i,j и определяем : Mas[j,i] := mas[i-1,j] + mas[I,j-1] + mas[I,j]
Const
Max = 100;
Var
Mas : array [1..max,1..max] of real;
I,j,z : intreger;
N : integer;
Begin
Readln(n);
For z := 1 to n do
For I := 1 to n do
For j := 1 to n do
Mas[j,i] := mas[i-1,j] + mas[I,j-1] + mas[I,j];
Write(mas[I,j]);
End.

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог