FFORGE//RS
← Маршрут

rust / УРОВЕНЬ 4

Dependency graph, который не стартует

ОЦЕНКА45 МИН
01

ТЕОРИЯ / ВОСПРОИЗВЕДЕНИЕ

Что нужно восстановить

  • Применять Kahn algorithm, deduplicate edges и использовать min-priority frontier

Неэмитированные nodes доказывают cycle

Если frontier пуст, а обработаны не все nodes, каждый оставшийся зависит от другого оставшегося; в конечном directed graph это означает цикл. Duplicate edges нельзя дважды считать в indegree.

КОНТРОЛЬНАЯ ТОЧКА

Kahn algorithm выдал 7 из 9 nodes и frontier опустел. Что доказано?

ISOLATED RUST 1.96
src/lib.rsРЕДАКТИРОВАНИЕ

02 / РЕАЛИЗАЦИЯ

Реализуйте контракт

Верните lexicographically smallest topological order для `0..node_count`. Edges: prerequisite→dependent; игнорируйте duplicates, отклоняйте bad endpoints, при неполном output возвращайте Cycle.

Инициализация редактора…
ОБЛАЧНЫЙ SANDBOXсеть выключена · 256 МБ · 12 с
1 / 64 KB
ВЫВОД
Runner ждёт отправки кода.