Сложная задача про длину кабеля

Сложная задача про длину кабеля

Потребуется логика и воображение

Воскресенье, утро, Стамбул. Сетевой инженер из России пьёт кофе в кафе с видом на Босфор. Вдруг звонок: 

— Васян, выручай, нужно срочно продиагностировать кусок сети, без тебя никак.

— В чём дело? 

— У нас два компьютера соединены через два шлюза. Нам нужно понять скорость сигнала между этими шлюзами. 

— В смысле? Ну зайдите на шлюз и сделайте пинг. Он вам скажет точное время прохождения сигнала. 

— Мы не можем, у нас нет пароля, а у кого он — никто не знает. 

— Ладно, что вы ещё знаете? 

Дальше он узнал вот что: 

  • Есть два компьютера.
  • Между ними два шлюза: красный и синий.
  • Между двумя шлюзами ещё какие-то устройства: серверы, передатчики, шлюзы и т. д. — мы не знаем какие. Они замедляют сигнал. 
  • Мы не знаем точный пинг (то есть время прохождения сигнала) между всеми этими точками.
  • Но если прогнать пинг от первого компьютера до красного шлюза и сравнить с пингом от красного шлюза до второго компьютера, то разница в пинге будет 25 миллисекунд. 
  • А если сравнить пинг до и от синего шлюза, то разница будет уже 35 миллисекунд.
  • Скорость пинга одинаковая в обе стороны всё время.

Задача — узнать пинг (то есть скорость прохождения сигнала) между красным и синим шлюзом. Предположительно там стоит какое-то оборудование, которое замедляет наш сигнал слишком сильно, и в зависимости от показателей замедлений нужно дать кому-то по шапке. 

Сложная задача про длину кабеля

Василий поспорил, что сможет решить эту задачу, даже не открывая компьютера. В выпадайке — как ему это удалось. 

Нарисуем схематично наше соединение с двумя шлюзами, красным и синим. Условно будем считать, что длина каждого отрезка соответствует скорости обработки сигнала:

Сложная задача про длину кабеля

Теперь обозначим за x, y и z три отрезка сигнала, которые нам неизвестны, и подпишем разницу в пинге — это то, что мы знаем:

Сложная задача про длину кабеля

По рисунку можно составить два уравнения:

x + y − z = 25 ← когда пингуем красный шлюз

y + z − x = 35 ← когда пингуем синий шлюз

Сложим эти уравнений друг с другом:

x + y − z + y + z − x = 25 + 35

Сгруппируем неизвестные друг с другом:

(x − x) + (y + y) + (z − z) = 60

2y = 60 → y = 30

Получается, пинг между шлюзами, которое мы обозначили за y, равен 30 миллисекунд. 

Текст:

Михаил Полянин

Редактор:

Максим Ильяхов

Художник:

Даня Берковский

Корректор:

Ирина Михеева

Вёрстка:

Кирилл Климентьев

Соцсети:

Алина Грызлова

Любите математику? Это для вас
Попробуйте бесплатный тренажер «Основы математики для цифровых профессий». Это все необходимые знания, чтобы закрыть пробелы в математике для айтишника.
Попробовать бесплатно
Любите математику? Это для вас Любите математику? Это для вас Любите математику? Это для вас Любите математику? Это для вас
Получите ИТ-профессию
В «Яндекс Практикуме» можно стать разработчиком, тестировщиком, аналитиком и менеджером цифровых продуктов. Первая часть обучения всегда бесплатная, чтобы попробовать и найти то, что вам по душе. Дальше — программы трудоустройства.
Начать карьеру в ИТ
Получите ИТ-профессию Получите ИТ-профессию Получите ИТ-профессию Получите ИТ-профессию
Еще по теме
Как перевезти гопников и философов с одного берега на другой
Как перевезти гопников и философов с одного берега на другой

Олимпиадная задачка для старшеклассников. Но справитесь ли с ней вы?

easy
Как рассадить интровертов в баре

Заходят как-то в бар два интроверта...

hard
Недетская задача про детей

Безумный диалог двух программистов может свести с ума любого умного человека, но не вас.

hard
Сложная задача про поросёнка и NFT
Сложная задача про поросёнка и NFT

Вы не сможете решить её правильно

easy
Задача про ниндзя и разведчика
Задача про ниндзя и разведчика

Победитель может быть только один.

medium
Головоломки для ИТ-собеседований
Головоломки для ИТ-собеседований

Четыре метода, которые помогают с решением.

easy
Задача про программистов и подбор пароля
Задача про программистов и подбор пароля

Как за три попытки определить пароль.

easy
Очень сложная задача про обруч
Очень сложная задача про обруч

Классическая математическая задачка, которая взрывает мозг.

easy
Разбираем логическую задачу про выпечку
Разбираем задачу про выпечку

Странно, но в интернете её часто решают неправильно.

medium
Задача про тест на собеседовании
Задача про тест на собеседовании

Пришёл программист на собеседование, и началось.

medium
easy