F1 = 6 Mбайт =2*3 *2^23 бит= 3*2^24 бит
V1=2^19 бит/с
V2=2^14 бит/с
F2=256=2^8 Кбайт=2^21 бит
------------------------------------------------
t1=2^21 :2^19 =2^2 =4 сек - время, за которое Толя скачает 256 Кбайт
t2=3*2^24 : 2^14 =3*2^10=3072 сек - Миша скачает все 6 Мбайт
t=t1+t2=4+3072=3076 cекунд - общее время ответ 3076
n,m=map(int,input('часы, минуты через пробел: ').split(' '))
n=n%12; cnt=0;
while True:
m+=1; n+=m//60;
m%=60; cnt+=1;
k=n*5+m//12;
if (m%12>5): k+=1;
if (abs(k-m)==15) or (60-k+m==15): break
print(cnt)
>>>
часы, минуты через пробел: 23 50
26
>>>
часы, минуты через пробел: 20 53
7
>>>
часы, минуты через пробел: 4 5
1
<h3>Алгоритм решения</h3>
Для каждого числа будем убирать последнюю цифру, пока число не станет нулём. При этом для очередной последней цифры ответ умножаем на 10 и прибавляем к нему эту цифру.
Для одного числа алгоритм будет выглядеть так:
while x > 0:
ans = ans * 10 + (x mod 10)
x = x // 10
Где <em>x </em>- заданное число, <em>ans </em>- ответ на задачу (перевёрнутое число), <em>mod </em>- операция получения остатка, <em>// </em>- операция целочисленного деления.
Формально, <em>x mod 10 </em>возвращает последнюю цифру числа <em>x </em>("остаток от деления x на 10"), а <em>x // 10 возвращает число </em>x <em>без последней цифры ("разделить x на 10 и отбросить остаток").</em>
<h3>Решение (Pascal)</h3>
var
x, i, ans: integer;
begin
for i := 1 to 5 do
begin
read(x);
ans := 0;
while (x > 0) do
begin
ans := ans * 10 + (x mod 10);
x := x div 10;
end;
write(ans, ' ');
end;
writeln;
end.
----------------------------
Файл решения прикреплён.
1-48*64=3072
2-24*32=768
3-3072+768=3840
4-3840*24=92160