Суть задачи:
В процессе обучения искусству оригами, Митя достиг апогея своего развития он научился складывать листы точно пополам! Так же он выяснил, что лист бумаги можно сложить пополам, только если длина стороны, которая уменьшается в результате складывания, не меньше удвоенной толщины. Вам задан прямоугольный лист бумаги единичной толщины и размером L W. Подсчитайте, какое максимальное количество раз он может быть сложен.
Во входном файле заданы два целых число L и W (длина и ширина листа соответственно).
В выходной файл выведите одно число максимальное число складываний, которое можно произвести с имеющимся листом бумаги.
Пример 1
Ввод
82 18
Вывод
4
Пример 2
Ввод
404 279
Вывод
6
Пример 3
Ввод
10 26
Вывод
3
У меня есть код который частично решает это задачу.
var L,W,M,K,T,H,F:real;
i: integer;
a:array [1..1000] of integer;
Begin
read(L,W);
m:=1;
K:=0;
if W<L then begin
H:=L;
F:=W;
end
else begin
H:=W;
F:=L;
end;
for i:=1 to 1000 do begin
if H>2*m then begin
K:=K+1;
m:=m*2;
H:=H/2;
end
else T:=K;
end;
for i:=1 to 1000 do begin
if F>2*m then begin
K:=K+1;
m:=m*2;
F:=F/2;
end
else T:=K;
end;
writeln(T);
End.
Могли бы Вы объяснить как работает этот код?(По какому принципу, т.к я не знаю даже основ паскаля, то пожалуйсто, подробно.) Если это возможно, интерпретируйте этот код в Python код. Надеюсь я не ошибся тематикой портала.