Tresors en un mapa (5) P43164


Statement
 

pdf   zip

thehtml

Feu un programa que, donat un mapa amb tresors i obstacles, digui a quina distància es troba, de tots els tresors accessibles des d’una posició inicial donada, el segon tresor més llunyà. Els moviments permesos són horitzontals o verticals, però no diagonals. Si cal, es pot passar per sobre dels tresors.

Entrada

L’entrada comença amb el nombre de files n > 0 i de columnes m > 0 del mapa. Segueixen n files amb m caràcters cadascuna. Un punt indica una posició buida, una ’X’ indica un obstacle, i una ’t’ indica un tresor. Finalment, un parell de nombres f i c indiquen la fila i columna inicials (ambdues començant en 1) des de les quals cal començar a buscar tresors. Podeu suposar que f està entre 1 i n, que c està entre 1 i m, i que la posició inicial sempre està buida.

Sortida

Escriviu el nombre mínim de passos des de la posició inicial fins al segon tresor més llunyà. Si no es pot arribar a dos o més tresors, cal indicar-ho.

Public test cases
  • Input

    7 6
    ..t...
    ..XXX.
    ......
    tX..X.
    .X..Xt
    .XX...
    ..t...
    5 3
    

    Output

    segona distancia maxima: 5
    
  • Input

    4 10
    ..t...X...
    .....X..t.
    XXXXX.X...
    t......X.t
    4 3
    

    Output

    no es pot arribar a dos o mes tresors
    
  • Input

    5 7
    .......
    .XXXXXt
    .X...Xt
    .X.X.XX
    ...X.Xt
    5 5
    

    Output

    segona distancia maxima: 19
    
  • Input

    1 3
    t.t
    1 2
    

    Output

    segona distancia maxima: 1
    
  • Information
    Author
    Salvador Roura
    Language
    Catalan
    Other languages
    English
    Official solutions
    C++ Python
    User solutions
    C++ Python