Mòria P25474


Statement
 

Graphic problem

pdf   zip

thehtml

El nan Gimli ha escalat un pou i ha aparegut dins de les mines de Mòria: per senzillesa, suposarem que és un rectangle amb n × m cel·les quadrades.

En Gimli vol explorar tantes cel·les com sigui possible, i recollir tots els tresors que hi trobi. En tot moment, des de la cel·la on està pot veure qualsevol altre cel·la que sigui veïna, ja sigui horitzontalment, verticalment o en diagonal. I, repetidament, pot moure’s a qualsevol de les cel·les veïnes, sempre i quan no tinguin un mur.

Feu un programa que dibuixi Mòria segons la informació descoberta per en Gimli.

Entrada

L’entrada consisteix en n i m, ambdues entre 3 i 25, seguides de la descripció de Mòria: m ‍files amb n caràcters cadascuna. Les ‘X’ indiquen murs, les ‘T’ tresors, i els ‘.’ cel·les lliures. Hi ha exactament una ‘P’, la qual indica la boca del pou. Totes les cel·les del voltant del rectangle són murs.

Sortida

Cal generar una imatge (50n, 50m) amb el mapa de Mòria d’acord amb tota la informació que pot descobrir en Gimli.

Cada cel·la ha de ser un quadrat d’amplada 50. Pinteu amb color ‘Brown’ les cel·les amb murs conegudes per en Gimli després de la seva exploració (incloses les del perímetre de Mòria, que sempre hi són). Pinteu amb color ‘White’ les cel·les explorades, i amb color ‘Black’ les cel·les que no es poden arribar a veure (amb mur o lliures, amb o sense tresor). A ‍més, pinteu la boca del pou amb un cercle de color ‘Blue’, i els tresors trobats amb cercles de color ‘Gold’. Els cercles han d’estar centrats a la seva cel·la i tenir amplada 40.

Public test cases
  • Input

    15
    11
    XXXXXXXXXXXXXXX
    X......X......X
    XX.XXXXX.XXXX.X
    X..X..TXTX..XTX
    X.XX.XXXXX..X.X
    X.XX....PXX.X.X
    X.XXXXXXXTX.X.X
    X..X....XTX.XTX
    XXXXX.T.X.XXX.X
    X..X....X.....X
    XXXXXXXXXXXXXXX
    

    Output

    sample-1.png

     (750×550)

  • Input

    20
    25
    XXXXXXXXXXXXXXXXXXXX
    X......XX.......X..X
    X.XXX.XX..TTTT..X..X
    X.X..XX...TTTT..XXXX
    X.XX.XX...TTTT..XX.X
    X.X.XXXX..TTTT..XTXX
    X.X..X.XX.......XTTX
    X.X.....XX..XX..XXTX
    XTX...X..XXXXXXXX..X
    XTXX..XX..XX....X.XX
    XTXXX.XXX..XXXX.X..X
    XTX.X.X.XX..XX..XX.X
    X.X.XTXT.XX.TX..X..X
    X.XXXXXXXXXXXXX....X
    X......XX......X...X
    X....XX.X..X....X..X
    X.T.XX..X.XXX...X..X
    X..XX...X.XTX..XTX.X
    X.XX..T...X.X...X..X
    X.X......XX.XX.....X
    X.XXXX..XX...XX...TX
    X.X.X.X.X.....X..XXX
    X.X.X.XXX.TTT.X.XX.X
    X.XXX.XXX.TPT...X.TX
    XXXXXXXXXXXXXXXXXXXX
    

    Output

    sample-2.png

     (1000×1250)

  • Information
    Author
    Salvador Roura
    Language
    Catalan
    Official solutions
    Python
    User solutions
    Python