// ERROR A PROPÓSITO: la revisión de ciclos no dirigida, usada en un grafo dirigido.
#include <iostream>

#include "../traversals.h"

int main() {
    // Dos caminos de 0 a 3. No hay ciclo: de 3 no se puede volver.
    Graph tasks(4, true);
    tasks.add_edge(0, 1);
    tasks.add_edge(0, 2);
    tasks.add_edge(1, 3);
    tasks.add_edge(2, 3);
    std::cout << "revision no dirigida: " << (has_cycle_undirected(tasks) ? "hay ciclo" : "sin ciclo") << "\n";
    std::cout << "revision con tres colores: " << (has_cycle_directed(tasks) ? "hay ciclo" : "sin ciclo") << "\n";
    return 0;
}
