A entrada contém o número de vértices do grafo e a distância máxima a ser utilizada na busca em largura, seguida de uma série de conexões. Cada conexão é composta do valor inteiro de dois vértices, seguido do peso da conexão (float). Após cada conexão, um inteiro representa se outra conexão será realizada ou não.
ex:
5 0.3 (informa que o grafo possui 5 vértices e que a distância máxima aceita na busca é 0.3)
0 4 0.3 1 (liga os vértices 0 e 4 com uma aresta de peso 0.3)
2 3 0.6 1 (liga os vértices 2 e 3 com uma aresta de peso 0.6)
1 3 0.4 0 (liga os vértices 1 e 3 com uma aresta de peso 0.4 e encerra a leitura)
Estou tentando ler cada linha como string e depois usar um split pra separar cada valor e em seguida ler as entradas do array mas já estou tendo problemas com o Scanner
import java.util.Scanner;
public class Leitor {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
StringBuilder sb = new StringBuilder();
while(in.hasNext()){
sb.append(in.nextLine());
}
System.out.println(sb);
}
Tem alguma coisa a ver com o fato de quando você escreve alguma coisa no console e dá enter pra enviar o scanner entende esse enter como uma quebra de linha ou algo assim e não fica com o valor nulo.
Dessa forma que está o código ele nunca sai do laço while.