//****************************************************************************
//
// Program:      Homework 5 -- Breadth first spanning trees
//
// Author:       Travis Dillon
// Email:        tdillon@ace.cs.ohiou.edu
//
// Description:  This program reads formatted input of a graph, and outputs
//               the breadth first search of that graph.
//
// Date:         October 14, 2003
//
//****************************************************************************

#include "prog3.h"

int main()
{
   Graph ralph;

   ralph.read_directed(cin, cout);  //O(1)
   ralph.read_num_vertices(cin, cout);  //O(1)
   ralph.read_vertices_name(cin, cout);  //O(n*n) n = number of vertices
   ralph.read_num_edges(cin, cout);  //O(1)
   ralph.read_edges(cin, cout);  //if n > e O(n*n) if e > n O(n*e)
   ralph.read_start(cin, cout);  //O(n) n = num vertices e = number of edges
   cout << endl;
   ralph.bfs(cout);  //O(n*e) n = number of vertices e = number of edges
   ralph.is_spanning(cout);  //O(1)

   return EXIT_SUCCESS;
}