Primera fila diferent després X89861


Statement
 

pdf   zip

Donada una matriu de naturals positius, per a cada fila volem saber quina és la primera fila que trobem després d’ella i diferent d’ella. Per exemple, considereu la següent matriu:

1 3 2 8
2 7 1 8
4 1 5 3
4 1 5 3
4 1 5 3
2 6 8 1
5 1 2 9

La fila 22 (indexant començant per 00) conté els valors 4,1,5,34,1,5,3 en aquest ordre. Resulta que les files 33 i 44 contenen els mateixos valors en el mateix ordre. En canvi, la fila 55 conté els valors 2,6,8,12,6,8,1. Per tant, 55 seria la primera fila després de la fila 22 que és diferent de la fila 22.

Entrada

La primera línia de l’entrada té dos valors positius n,mn,m separats per un espai que representen les mides de la matriu. A continuació venen nn línies amb mm valors positius separats per espais, el contingut de la matriu.

Sortida

La sortida conté nn línies. La ii-esima línia (indexant des de 00) conté o bé un número major que ii, que és l’índex de la primera fila que trobem després de la fila ii que és diferent de la fila ii, o bé un 1-1 si tal fila diferent no existeix.

Observació

Per a superar uns quants jocs de proves i obtenir una nota acceptable podeu fer un programa senzill. Però per a superar tots els jocs de proves convindrà pensar en alguna optimització raonable.

Public test cases
  • Input

    7 4
    1 3 2 8
    2 7 1 8
    4 1 5 3
    4 1 5 3
    4 1 5 3
    2 6 8 1
    5 1 2 9

    Output

    1
    2
    5
    5
    5
    6
    -1
    
  • Input

    3 4
    5 5 5 5
    5 5 5 5
    5 5 5 5

    Output

    -1
    -1
    -1
    
  • Input

    20 20
    8 11 52 43 72 61 49 96 69 15 33 53 64 16 91 86 2 90 54 99
    95 55 18 60 34 83 75 90 26 57 1 85 20 4 27 91 16 28 86 84
    42 71 88 5 38 31 42 39 20 47 89 66 53 6 25 86 88 100 75 13
    42 71 88 5 38 31 42 39 20 48 89 66 53 6 25 86 88 100 75 13
    91 44 38 43 50 63 28 37 14 54 2 73 32 3 52 13 78 24 61 33
    82 45 80 62 16 32 27 17 76 34 89 67 78 26 9 79 40 89 67 53
    94 20 78 26 22 81 90 52 4 3 84 38 47 15 99 62 46 78 78 22
    11 18 88 40 43 48 70 83 36 89 87 82 8 16 7 82 48 48 33 52
    11 18 88 40 43 48 70 83 36 89 87 82 8 16 7 82 48 48 33 52
    12 18 88 40 43 48 70 83 36 89 87 82 8 16 7 82 48 48 33 52
    12 18 88 40 43 48 70 83 36 89 87 82 8 16 7 82 48 48 33 51
    25 13 82 48 89 87 4 7 53 87 92 57 22 8 63 96 45 18 60 73
    56 99 84 11 92 33 56 3 54 81 22 79 93 3 78 33 41 81 91 46
    67 83 2 40 90 64 87 34 33 46 58 88 44 41 50 88 73 5 90 27
    37 63 57 82 17 34 66 9 14 57 54 32 39 55 71 28 70 9 13 54
    37 63 57 82 17 34 66 9 14 57 54 32 39 55 71 28 70 9 13 54
    94 18 49 32 24 71 11 46 31 23 51 85 44 44 34 5 38 70 91 88
    47 2 75 86 22 95 41 26 33 4 44 26 73 44 10 49 67 20 46 97
    47 2 75 86 22 95 41 26 33 4 44 26 73 44 10 49 67 20 46 97
    14 80 46 38 75 7 86 41 79 31 90 25 79 22 14 17 88 60 45 74

    Output

    1
    2
    3
    4
    5
    6
    7
    9
    9
    10
    11
    12
    13
    14
    16
    16
    17
    19
    19
    -1
    
  • Information
    Author
    Language
    Catalan
    Official solutions
    C++
    User solutions
    C++