public class EjercicioCompeticionesConsecutivas { public static int anyoMasCompeticionesConsecutivasMismoGanador (String[][] dorsalesGanadores) { int competiciones = dorsalesGanadores.length; int anyos = dorsalesGanadores[0].length; int maximo = 0, anyoMaximo = 0, contador = 0; for (int anyo = 0; anyo < anyos; anyo++) { for (int competicion = 0; competicion < competiciones; competicion++) { if ( competicion == 0 || ! dorsalesGanadores[competicion][anyo].equals(dorsalesGanadores[competicion - 1][anyo]) ) contador = 1; else contador++; if (contador >= maximo) { maximo = contador; anyoMaximo = anyo; /* System.out.println( "Nuevo maximo=" + maximo + " en el anyo " + (anyo+2000)); */ } } } return anyoMaximo + 2000; } public static void main (String[] args) { String[][] prueba1 = { {"00-A", "00-A"} }; String[][] prueba2 = { {"00-A", "00-A", "00-A", "00-A"}, {"77-B", "77-B", "77-B", "77-B"}, {"00-A", "00-A", "00-A", "00-A"}, {"77-B", "77-B", "77-B", "77-B"} }; String[][] prueba3 = { {"12-A", "12-A", "12-A", "12-A"}, {"12-A", "12-A", "12-A", "12-A"}, {"33-A", "12-A", "07-B", "12-A"}, {"12-A", "12-A", "07-B", "33-A"}, {"12-A", "33-A", "07-B", "12-A"}, {"12-A", "33-A", "07-B", "12-A"} }; System.out.println( "Prueba 1: " + anyoMasCompeticionesConsecutivasMismoGanador(prueba1) ); System.out.println( "Prueba 2: " + anyoMasCompeticionesConsecutivasMismoGanador(prueba2) ); System.out.println( "Prueba 3: " + anyoMasCompeticionesConsecutivasMismoGanador(prueba3) ); } }