package com.company;
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
public class Main {
class Vertice {
int atual;
boolean visitado;
List<Aresta> arestas;//lista de arestas dentro do vertice
Vertice(int atual, boolean visitado) {
this.atual = atual;
this.visitado = visitado;
}
void addAdjacente(Aresta novaAresta) {
arestas.add(novaAresta);
}
int getAtual() {
return atual;
}
void setVisitado() {
this.visitado = true;
}
}
class Aresta {
Vertice origem;
Vertice destino;
int tipo;
Aresta(Vertice origem, Vertice destino, int tipo) {
this.origem = origem;
this.destino = destino;
this.tipo = tipo;
}
}
public static void main
(String[] args
) { // Grafo g = new Grafo();
//Scanner sc = new Scanner(System.in);
List<Vertice> vertices;
vertices = new ArrayList<>();//construtor incia a lista de vertices
}
}
cGFja2FnZSBjb20uY29tcGFueTsKCmltcG9ydCBqYXZhLnV0aWwuQXJyYXlMaXN0OwppbXBvcnQgamF2YS51dGlsLkxpc3Q7CmltcG9ydCBqYXZhLnV0aWwuU2Nhbm5lcjsKCnB1YmxpYyBjbGFzcyBNYWluIHsKCgogICAgY2xhc3MgVmVydGljZSB7CiAgICAgICAgaW50IGF0dWFsOwogICAgICAgIGJvb2xlYW4gdmlzaXRhZG87CiAgICAgICAgTGlzdDxBcmVzdGE+IGFyZXN0YXM7Ly9saXN0YSBkZSBhcmVzdGFzIGRlbnRybyBkbyB2ZXJ0aWNlCgogICAgICAgIFZlcnRpY2UoaW50IGF0dWFsLCBib29sZWFuIHZpc2l0YWRvKSB7CiAgICAgICAgICAgIHRoaXMuYXR1YWwgPSBhdHVhbDsKICAgICAgICAgICAgdGhpcy52aXNpdGFkbyA9IHZpc2l0YWRvOwogICAgICAgIH0KCiAgICAgICAgdm9pZCBhZGRBZGphY2VudGUoQXJlc3RhIG5vdmFBcmVzdGEpIHsKICAgICAgICAgICAgYXJlc3Rhcy5hZGQobm92YUFyZXN0YSk7CiAgICAgICAgfQoKICAgICAgICBpbnQgZ2V0QXR1YWwoKSB7CiAgICAgICAgICAgIHJldHVybiBhdHVhbDsKICAgICAgICB9CgogICAgICAgIHZvaWQgc2V0VmlzaXRhZG8oKSB7CiAgICAgICAgICAgIHRoaXMudmlzaXRhZG8gPSB0cnVlOwogICAgICAgIH0KICAgIH0KCgogICAgY2xhc3MgQXJlc3RhIHsKICAgICAgICBWZXJ0aWNlIG9yaWdlbTsKICAgICAgICBWZXJ0aWNlIGRlc3Rpbm87CiAgICAgICAgaW50IHRpcG87CgogICAgICAgIEFyZXN0YShWZXJ0aWNlIG9yaWdlbSwgVmVydGljZSBkZXN0aW5vLCBpbnQgdGlwbykgewogICAgICAgICAgICB0aGlzLm9yaWdlbSA9IG9yaWdlbTsKICAgICAgICAgICAgdGhpcy5kZXN0aW5vID0gZGVzdGlubzsKICAgICAgICAgICAgdGhpcy50aXBvID0gdGlwbzsKICAgICAgICB9CiAgICB9CgogICAgcHVibGljIHN0YXRpYyB2b2lkIG1haW4oU3RyaW5nW10gYXJncykgewogICAgICAgIC8vIEdyYWZvIGcgPSBuZXcgR3JhZm8oKTsKICAgICAgICAvL1NjYW5uZXIgc2MgPSBuZXcgU2Nhbm5lcihTeXN0ZW0uaW4pOwogICAgICAgIFN5c3RlbS5vdXQucHJpbnRsbigiQUEiKTsKICAgICAgICBMaXN0PFZlcnRpY2U+IHZlcnRpY2VzOwogICAgICAgIHZlcnRpY2VzID0gbmV3IEFycmF5TGlzdDw+KCk7Ly9jb25zdHJ1dG9yIGluY2lhIGEgbGlzdGEgZGUgdmVydGljZXMKCgogICAgfQp9Cgo=