Nodos adyacentes (grafo dirigido)

Un grafo dirigido es como un grafo no dirigido, excepto que las aristas tienen dirección. Cada arista va de un nodo de origen a un nodo objetivo.

Ejemplos

Graph 1

Aquí, el nodo 0 es adyacente al nodo 1, pero el nodo 1 no es adyacente al nodo 0, por ejemplo. Así se vería el grafo anterior si fuera no dirigido:

Graph 2

En los grafos dirigidos, la dirección de la arista importa. Por ejemplo, los siguientes dos grafos son diferentes:

Graph 3A

Graph 3B

Con los grafos no dirigidos, la matriz de adyacencia es simétrica respecto a la diagonal principal, pero en un grafo dirigido no siempre es así. En particular, un 1 en la fila i y la columna j indica que existe una arista de i a j.

Graph 1

El siguiente grafo tendría la siguiente matriz de adyacencia:

{
  {0, 1, 1, 0, 0},
  {0, 0, 0, 0, 0},
  {0, 1, 0, 0, 0},
  {0, 0, 1, 0, 1},
  {1, 0, 0, 0, 0}
}

Podemos ver que del nodo 1 no sale ninguna arista. Eso se refleja en que su fila contiene solo ceros. Un nodo al que no entra ninguna arista tendría una columna que contiene solo ceros.

Instrucciones

Tu tarea consiste en, dada la matriz de adyacencia de un grafo dirigido y dos nodos, determinar si el primer nodo es adyacente al segundo.

Notas

  • Los grafos pueden tener entre 0 y 25000 nodos.
  • Límite de tiempo: 100 milisegundos.