Задание лишено смысла, т. к. символ никогда не кодируется частью байта. Но допустим, что под байтом тут просто понимается массив из 8 битов. Тогда 2^(30 * 8 / 40) = 64.
Ответ:
import re
s = input('>> ')
s = re.sub(r'[^\w\s]+|[\d]+', r'',s)
print(s)
Объяснение:
Python 3.7
tg = Fr0DK
640 битов вроде бы если если цифры не подводят
(60*1024*1024*8)/(16*1000*2*24)=655,36с
655,36/60=11мин
Var
s: biginteger;
n,i: int64;
ar:array of int64=(9,90,900,9000,90000,900000,9000000,90000000);
begin
i:=1;
read(n);
while n-ar[i-1]>=0 do
begin
s:=s+(ar[i-1]*i);
n:=n-ar[i-1];
i:=i+1;
end;
if(n>0)then
begin
s:=s+(n*i);
end;
write(s);
end.