Задача #3170

Компьютерные сети

Уровень ЕГЭ

(А. Ходарин) В терминологии сетей TCP/IP маской сети называют двоичное число, которое показывает, какая часть IP-адреса узла сети относится к адресу сети, а какая – к адресу узла в этой сети. Адрес сети получается в результате применения поразрядной конъюнкции к заданному адресу узла и маске сети. Узлы с адресами 95.24.2.9 и 95.24.3.10 принадлежат разным подсетям. Известно, что в масках обеих подсетей содержится одинаковое количество единиц. Какое наибольшее количество IP-адресов узлов, двоичная запись которых оканчивается нуль, может содержаться в подсети? В ответе укажите только число.

Ответ
Войдите, чтобы история ответов и статистика сохранялись.
Решение Нажми, чтобы открыть

Ответ

127
from ipaddress import *

for mask in range(33):
net1 = ip_network(f'95.24.2.9/{mask}', 0)
net2 = ip_network(f'95.24.3.10/{mask}', 0)
if net1.network_address != net2.network_address:
print(sum(1 for ip in net1.hosts() if f'{ip:b}'[-1] == '0'))
print(sum(1 for ip in net2.hosts() if f'{ip:b}'[-1] == '0'))
Быстрый переход
Перейти к задаче