ЕГЭ, ОГЭ, программирование и робототехника в Калининграде

№ 10208. Авторская задача

Сеть задана IP-адресом 16.0.А.5, где А – некоторое допустимое для записи IP-адреса число, и масок сети 255.255.192.0.

Определите минимальное значение А, для которого для всех IP-адресов этой сети в двоичной записи IP-адреса суммарное количество нулей в левых двух байтах не менее суммарного количества нулей в правых двух байтах.

В ответе укажите только число.

from ipaddress import ip_network, ip_address

mask = '255.255.192.0'

for A in range(256):
    ip = ip_address(f'16.0.{A}.5')
    net = ip_network(f'{ip}/{mask}', False)

    if all(f'{int(ip):032b}'[:16].count('0') >=
           f'{int(ip):032b}'[16:].count('0')
           for ip in net):
        print(A)
        break
Разберём это задание на бесплатном пробном занятии

Преподаватель покажет, как решать такие задачи, и подскажет, с чего начать подготовку. Группы до 8 человек, очно в Калининграде и онлайн.

Записаться на пробное занятие