Для простоты обьяснения выберем тройку кораблей которая будет заходить в ответвление. Пускай это будет "Обь", "Восток" и "Петропавловск" - далее А1, А2, А3
Вторая група кораблей будет только ездить туда сюда "Мир", "Енисей" и "Россия" - далее группа В 0) Если надо, корабли группы В задним ходом возвращаются на места, чтоб дать кораблю из группы А заплыть в ответвление 1) Корабль А1 заходит в ответвление 2) Корабли группы В плывут вперед, так чтоб зайти за ответвление и выпустить корабль оттуда 3) Корабль А1 выплывает из ответвления и уплывает
Шаги 0-3 повторяются для всех кораблей группы А
4) Корабли групы В проплывают дальше по освободившемуся каналу
Вторая група кораблей будет только ездить туда сюда "Мир", "Енисей" и "Россия" - далее группа В
0) Если надо, корабли группы В задним ходом возвращаются на места, чтоб дать кораблю из группы А заплыть в ответвление
1) Корабль А1 заходит в ответвление
2) Корабли группы В плывут вперед, так чтоб зайти за ответвление и выпустить корабль оттуда
3) Корабль А1 выплывает из ответвления и уплывает
Шаги 0-3 повторяются для всех кораблей группы А
4) Корабли групы В проплывают дальше по освободившемуся каналу
Задача 1
Program Zadanie1;
var i,N:integer;
A:array[1..4]of integer;
Begin
readln(n);
A[1]:=round(int(N/1000));
A[2]:=round(int(N/100))-A[1];
A[3]:=round(int(N/10))-A[1]-A[2];
A[4]:=N-A[1]-A[2]-A[3];
if (A[1]:=A[4]) and (A[2]:=A[3]) and (A[3]:=A[2]) and (A[4]=A[1]) then writeln('полином');
end;
Задача 2
Program Zadanie2;
var i,N:integer;
A:array[1..3]of integer;
function Kub(a):integer;begin Kub:=a*a*a;end;
Begin
readln(n);
A[1]:=round(int(N/1000));
A[2]:=round(int(N/100))-A[1];
A[3]:=N-A[1]-A[2]-A[3];
if N*N=kub(A[1])+kub(A[2])+kub(A[3]) then writeln('равенство');
end;