ВУЗ:
Составители:
Рубрика:
Solve(&matr, &solution);
} else {
SolvePrecise(&matr, &solution);
};
free_matr(&matr);
WriteOutput("output.txt",&solution);
free_vect(&solution);
return ERR_OK;
}
Задача 11. " Переселение "
Задача предлагалась на первом (заочном)туре Открытой региональной
студенческой школы-олимпиады по программированию и компьютерному
моделированию 17-19 сентября 2001 года .
Автор решения: Козлов Юрий Станиславович, один из призеров первого
тура олимпиады, студент 1 курса РТФ ВИ МВД РФ 16гр
На Компьютерной улице живут в собственных домах только семьи Паскалёвых и
Сиплюсплюсовых. Они решили переселиться так , чтобы все Паскалёвы жили в начале улицы ,
а все Сиплюсплюсовы - в конце . Известно общее количество домов на улице и кто живет в
каждом доме.
Требуется разработать модель и алгоритм (программу) переселения, при условии, что
каждая семья должна переезжать не более одного раза, а в каждом обмене должны участвовать
только две семьи .
Uses Crt,Dos;
const n=30;
delayy=200;{ <= измените, если тормозит заставка}
Var street,street2:array[1..n] of integer;
i,s,left,right,j,k,a,b,q,f:integer;
Procedure HideCursor;
Var regs: registers;
Begin
regs.ah:=1;
regs.ch:=$20;
regs.cl:=0;
regs.bh:=0;
Intr($10,regs);
End;
Procedure Introduction; {заставка}
var i,x,y,cx,cy,ctx,cty,textn,maxx,maxy:byte;
text:array[1..20] of string;
index:char;
Begin
HideCursor;
cx:=42;
cy:=13;
maxx:=32;
maxy:=8;
ctx:=cx-maxx+1;
cty:=cy-maxy-1;
Text[1]:=' Козлов Юрий Станиславович';
Text[2]:=' ВИ МВД России';
Text[3]:=' 394065, г.Воронеж Прспект Патриотов, 53,';
Text[4]:=' тел. 33-18-67 ';
Text[5]:='';
Text[6]:=' Радиотехнический факультет';