/** 5. Megoldásunkat teszteljük a megadott Main osztály segítségével.

Paraméterek: gráf típusa (sparse/dense), csúcsok száma, élek listája, és a kiinduló él.
java gyak9.Main sparse 4 0-1-3,0-2-3 0 eredménye [0, 2, 3, 1]
java gyak9.Main dense 4 0-1-3,0-2-3 0 eredménye [0, 2, 3, 1]
*/
class Main {
    public static void main(String[] args) {
        Graph g = null;
        int size = Integer.parseInt(args[1]);
        switch (args[0]) {
            case "dense" : 
                g = new DenseGraph(size);
                break;
            case "sparse" : 
                g = new SparseGraph(size);
                break;
        }
        String[] edges = args[2].split(",");
        for (String edge : edges) {
            String[] parts = edge.split("-");
            for (int i = 0; i < parts.length - 1; ++i) {
                g.addEdge(Integer.parseInt(parts[i]), Integer.parseInt(parts[i+1]));
            }
        }
        System.out.println(g.depthFirstTraversal(Integer.parseInt(args[3])));
    }
}