IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

 
 Ответить  Открыть новую тему 
> Помогите решить задачу про города, Графы
сообщение
Сообщение #1





Группа: Пользователи
Сообщений: 4
Пол: Мужской
Реальное имя: Виталий

Репутация: -  0  +


В программу вводится количество городов Q, и в 2 массива (XC и YC) вводятся координаты городов.
Нужно написать программу которая бы считала как нужно соединить города дорогами так, что бы сумма длин дорог была наименьшей.
вот что я смог написать
uses crt;
const Qmax=50;
type graf=array [1..Qmax,1..Qmax] of integer;
tyMas= array [1..Q] of integer;
var i,j,Q,k:integer;
ML,R:graf;
XC,YC,Mas:tyMas;

procedure MiEl(Mos:tyMas; N:integer);

var Min,Im:integer;

begin
Im:=1;
Min:=Mos[Im];
for k:=1 to N do
if Min>Mos[k] do begin Im:=k; Min:=Mos[Im]; end;
Mos[N+1]:=Im;
end;

Begin
writeln('Vvedite kolichestvo gorodov')
read(Q);
writeln('Vvedite koordinaty gorodov');
for i:=1 to Q do read(XC[I],YC[I]);
For i:=1 to Q do
For j:=1 to Q do begin
ML[i,j]:=abs(XC[I]-XC[j])+abs(YC[I]-YC[j]);
if ML[i,j]=0 then ml[I,j]:=maxint;
end;
for i:=1 to Q do begin
for J:=1 to Q do Mas[J]:=ML[i,j];
MiEl(Mas,Q);
R[I,1]:=i;
R[I,2]:=Mas[Q+1];
end;
for i:=1 to Q do
if R[I,1]=R[R[I,2],2] then
R[R[I,2],1]:=0;
writeln('Dorogi:')
for i:=1 to Q do
if R[i,1]<>0 then writeln(R[I,1],' ',R[I,2]);
end.


осталось только дописать проверку получившегося графа на связность wacko.gif , кто нибудь может помочь??

Сообщение отредактировано: J.Bond_33 -
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 20.04.2024 7:38
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name