К записи собеседования
Waymo

Алгоритмический тренажер

Алгоритмическая секция в Waymo

Тип тренировки
Алгоритмы
Задач
1
Компания
Waymo
Дата
2026-02-13
Задача 1HardГеометрияГрафыСистема непересекающихся множествDFS

Путь через квадрат с круглыми препятствиями

Условие задачи

Дан единичный квадрат с координатами от (0, 0) до (1, 1).

Внутри или около квадрата расположены круги-препятствия. Каждый круг задан как [x, y, r]: центр и радиус.

Нужно определить, существует ли путь из любой точки левой стороны квадрата в любую точку правой стороны квадрата.

Ограничения:

  • нельзя заходить внутрь кругов;
  • нельзя касаться кругов;
  • нельзя выходить за пределы квадрата;
  • касание кругов друг с другом или с границей считается блокировкой.

Сигнатура

def can_cross_square(circles: list[list[float]]) -> bool:

Идея

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

Ваше решение

Консоль
Нажмите «Запустить проверки» или Ctrl+Enter