import java.util.*;

public class graphTest
{
	public static void main(String args[])
	{
		myGraph g = new myGraph(2);		

		g.addVertex("Boston");
		g.addVertex("Seattle");

		g.deleteVertex("New York City");

		g.addEdge("Boston", "New York City");

		g.addVertex("New York City");
		g.addEdge("Boston", "New York City");
		g.addEdge("Boston", "Seattle");

		String[] bostonsNeighbors;
		bostonsNeighbors = g.getNeighbors("Boston");

		System.out.println("The neighbors of Boston are:");
		for(int i = 0; i < bostonsNeighbors.length; i++)
			System.out.println(bostonsNeighbors[i]);
		System.out.println("=======================");


		String[][] triangles = g.listTriangles();
		System.out.println("The number of triangles is " + triangles.length);
		if(triangles.length > 0)
			for(int i = 0; i < triangles.length; i++)
				System.out.println(triangles[i][0] + " " + triangles[i][1] + " " + triangles[i][2]);
		System.out.println("=======================");

		g.addVertex("Dallas");
		g.addEdge("Seattle", "Dallas");
		g.addEdge("Dallas", "Boston");
		g.addEdge("Dallas", "New York City");

		bostonsNeighbors = g.getNeighbors("Boston");
		System.out.println("The neighbors of Boston are:");
		for(int i = 0; i < bostonsNeighbors.length; i++)
			System.out.println(bostonsNeighbors[i]);
		System.out.println("=======================");

		String[] dallasNeighbors = g.getNeighbors("Dallas");
		System.out.println("The neighbors of Dallas are:");
		for(int i = 0; i < dallasNeighbors.length; i++)
			System.out.println(dallasNeighbors[i]);
		System.out.println("=======================");

		triangles = g.listTriangles();
		System.out.println("The number of triangles is " + triangles.length);
		if(triangles.length > 0)
			for(int i = 0; i < triangles.length; i++)
				System.out.println(triangles[i][0] + " " + triangles[i][1] + " " + triangles[i][2]);
		System.out.println("=======================");

		g.addVertex("Los Angeles");
		g.addVertex("San Francisco");
		g.addEdge("San Francisco", "Seattle");	
		g.addEdge("San Francisco", "Los Angeles");	
		g.addEdge("Seattle", "Los Angeles");	

                triangles = g.listTriangles();
                System.out.println("The number of triangles is " + triangles.length);
                if(triangles.length > 0)
                        for(int i = 0; i < triangles.length; i++)
                                System.out.println(triangles[i][0] + " " + triangles[i][1] + " " + triangles[i][2]);
                System.out.println("=======================");


		g.deleteVertex("Seattle");
		bostonsNeighbors = g.getNeighbors("Boston");
		for(int i = 0; i < bostonsNeighbors.length; i++)
			System.out.println(bostonsNeighbors[i]);
		System.out.println("=======================");
	
	}
}
