У нас есть отношение сторон, которое обычно принимают за части, т.е. 1-я сторона = 5 частей, 2-я = 7 частей, 3-я = 11 частей. Сумма самой большей и самой меньшей сторон = 80, т.е., нужно посмотреть, какая сторона имеет самое большее количество частей, и какая сторона имеет самое меньшее кол-во частей. В данной задаче самая большая сторона имеет 11 частей, а самая маленькая имеет 5 частей. Нужно сложить эти части: 5+11=16(ч.) То есть, эти 16 частей равны 80 см, а чтобы узнать, сколько см содержится в одной части, нужно 80:16= 5 (см). Теперь найдем ту часть, которая содержит 7 частей : 7*5= 35 (см). Теперь мы знаем сумму 1-й и 3-й стороны, и только что вычислили длину 2-й стороны. Чтобы найти периметр, нужно сложить все стороны: Р=80+35=115(см) ответ: Р=115см
var A,B, minA, maxA, minB, maxB, minn, maxx, t, t1, i:longint;
begin
readln(A); readln(B);
minA:=(A-1)*50+1; maxA:=A*50;
minB:=(B-1)*70+1; maxB:=B*70;
if (minA>maxB) or (minB>maxA) then writeln(-1) else
begin
if minA<minB then minn:=minB else minn:=minA;
if maxA>maxB then maxx:=maxB else maxx:=maxA;
t:=minn div 60;
t1:=maxx div 60;
if (minn mod 60)<>0 then inc(t);
if (maxx mod 60)<>0 then inc(t1);
for i:=t to t1 do
write(i, ' ');
writeln();
end;
end.
не могу сказать верно или нет, так как не проверял а просто написал в блокнотике