Ajuda no algoritmo java

Boa noite alguém poderia me ajudar nesse problema que tenho que fazer. Pois tenho vários desse tipo a fazer e não estou conseguindo se alguém puder me dar o exemplo deste para eu ter uma melhor noção eu agradeço. Aí vai…

CORRIDA (JAVA)

ENTRADA
A primeira linha da entrada contém dois inteiros N e M representando o número de carros e o número de voltas da corrida, respectivamente.

Cada uma das N linhas seguintes representa um carro: a primeira linha representa o primeiro carro, a segunda linha representa o segundo carro, e assim por diante.

Cada linha contém M inteiros representando os tempos em cada volta da corrida: o primeiro inteiro é o tempo da primeira volta, o segundo inteiro é o tempo da segunda volta, e assim por diante.

Garante-se que não houve dois carros que gastaram o mesmo tempo para completar a corrida inteira.

SAÍDA
A saída consiste de três linhas, contendo um único inteiro cada. A primeira linha contém o número do carro que ganhou a corrida, a segunda contém o número do segundo colocado e a terceira contém o número do terceiro colocado.

RESTRIÇÕES
• 3 <= N <= 100
• 1 <= M <= 100
• 1 <= qualquer número da entrada que represente o tempo de uma volta <= 10E6.

INFORMAÇÕES SOBRE A PONTUAÇÃO
• Em um conjunto de casos de teste que totaliza 20 pontos, N = 3;
• Em um conjunto de casos de teste que totaliza 20 pontos, M = 1;

Se alguém puder me ajudar agradeço.

Já tem uma postagem muito parecida, eu diria até tratando do mesmo assunto aqui no fórum: Atividade de Corrida.