Алгоритм решения задания 14. Часть 1
Учимся решать 15 задания первого типа
Читать
Сеть задана IP-адресом 127.254.А.10, где А – некоторое допустимое для записи IP-адреса число, и масок сети 255.255.224.0.
Определите максимальное значение А, для которого для всех IP-адресов этой сети в двоичной записи IP-адреса суммарное количество единиц в левых двух байтах не менее суммарного количества единиц в правых двух байтах.
В ответе укажите только число.
Правильный ответ:
159
from ipaddress import ip_network
mask = '255.255.224.0'
for A in range(256)[::-1]:
net = ip_network(f'127.254.{A}.10/{mask}', False)
if all(f'{int(ip):032b}'[:16].count('1') >=
f'{int(ip):032b}'[16:].count('1')
for ip in net):
print(A)
break
