Написать ответ и подробно разобрать решение, в том числе для подобных заданий var a,b,t,M,R: longint;
function F(x:longint):longint;
begin
if (x div 4<=21-x div 4) then
F:= x div 4
else F:= 21- x div 4
end;
begin
a:=0; b:=60;
M:=a; R:=F(a);
for t:= a to b do begin
if (F(t)>=R) then begin
M:=t;
R:=F(t)
end
end;
write (M+R)
end.
57
Объяснение:
a -> b: [0, 60]
f(0)=0 => R=0, M=0
f(1) = 0
f(2) = 0
f(3) = 0
f(4) = 1 => R=1, M=4
f(8) = 2 => R=2, M=8
замечаем последовательность!
f(40-43) = 10, R=10, M=43
f(44-47) = 10, R=10, M=47
f(48) = 9 (начинается уменьшение функции из-за чего R и M больше ничего не присваивается)
10+47=57