Pac-man P87462


Statement
 

pdf   zip

thehtml

Donat un tauler rectangular que conté en Pac-man, digueu si pot arribar a menjar-se algun bolet energètic. Per poder arribar-hi, en Pac-man només pot fer moviments horitzontals i verticals, sense travessar cap mur. En Pac-man no pot estar mai massa a prop d’un fantasma: sempre hi ha d’haver una casella de marge, ja sigui horitzontalment, verticalment, o en diagonal. Fixeu-vos en els exemples d’entrada i sortida.

Entrada

L’entrada consisteix en diversos casos. Cada cas comença amb el nombre de files f i el nombre de columnes c del tauler. Segueixen f files amb c caràcters cadascuna. Una ‘P’ indica la posició inicial d’en Pac-man. Una ‘F’ indica la posició d’un fantasma (que no es mou). Una ‘B’ indica la posició d’un bolet. Una ‘X’ indica un mur. Un punt indica una posició buida. Suposeu 3 ≤ f ≤ 100, 3 ≤ c ≤ 100, que les files i columnes de la vora del tauler només contenen murs, i que cada tauler té exactament una ‘P’.

Sortida

Per a cada cas, digueu si en Pac-man es pot menjar algun bolet o no.

Public test cases
  • Input

    6 10
    XXXXXXXXXX
    X........X
    X....XXX.X
    XP.F...X.X
    X....F.XBX
    XXXXXXXXXX
    7 12
    XXXXXXXXXXXX
    X.......BF.X
    X.........XX
    X.F..P...X.X
    X.......X..X
    X.B..F.X.B.X
    XXXXXXXXXXXX
    3 5
    XXXXX
    XFPBX
    XXXXX
    6 8
    XXXXXXXX
    X.....BX
    X.P.F..X
    X...F..X
    X.....BX
    XXXXXXXX
    

    Output

    si
    no
    no
    no
    
  • Information
    Author
    Salvador Roura
    Language
    Catalan
    Other languages
    English
    Official solutions
    C++
    User solutions
    C++