GRID//RUNNER

FIND IF PATH EXISTS EASY

problema

Há um grafo não dirigido com n nós, numerados de 0 a n − 1, e uma lista edges em que cada [a, b] é uma aresta entre a e b. Pode haver nós soltos e o grafo pode ter várias partes separadas.

Dados origem e destino, retorne true se existir algum caminho entre eles.

Exemplo 1 · n = 9, arestas como no desenho, origem = 0, destino = 5 → true

0 → 1 → 3 → 5, por exemplo.

Exemplo 2 · o mesmo grafo, origem = 0, destino = 8 → false

7 e 8 formam uma parte separada: nenhuma aresta liga essa parte ao resto. É o exemplo animado abaixo, em que a busca precisa visitar toda a componente da origem antes de desistir.

Restrições: 1 ≤ n ≤ 2·10⁵ · 0 ≤ edges.length ≤ 2·10⁵ · sem arestas repetidas nem laços