Для решения этой задачи нужно понять, какие посёлки уже соединены дорогами и сколько ещё нужно добавить, чтобы все посёлки были связаны между собой.
Сначала определим, какие посёлки могут быть соединены. Сумма номеров двух посёлков должна делиться на 8. Это значит, что посёлки с номерами (a) и (b) соединены, если (a + b) кратно 8.
Рассмотрим остатки от деления номеров посёлков на 8. Возможные остатки: 0, 1, 2, 3, 4, 5, 6, 7.
Для того чтобы сумма двух номеров делилась на 8, остатки этих номеров при делении на 8 должны в сумме давать либо 8, либо 0.
Таким образом, посёлки делятся на несколько групп, внутри которых они могут быть соединены. Нам нужно посчитать, сколько таких групп и сколько дорог нужно построить, чтобы объединить все группы в одну.
Подсчитаем количество посёлков с каждым остатком от деления на 8:
Теперь определим группы, которые формируются:
Получается 5 групп. Чтобы связать все группы в одну, нужно построить минимум 4 дороги (количество групп минус 1). Каждая дорога связывает два посёлка из разных групп.
Ответ: 4