Ce problème est interactif.
Taja peut facilement gagner à ce jeu, mais aucun de ses amis n'y arrive. Elle vous propose maintenant d'y jouer.
L'équipement de jeu consiste en un terrain de $n \times n$ ($5 \le n \le 40$), une pièce, deux pièces de monnaie (COIN1, COIN2), deux dés avec des directions cardinales (DICE1, DICE2), et un grand nombre de blocs de la taille d'une cellule.
| Nom | Nombre de faces | Faces |
|---|---|---|
COIN1. Pièce de mouvement |
2 | SLIDE, RAM |
COIN2. Pièce de modification |
2 | PLACE, REMOVE |
DICE1. Premier dé avec directions |
4 | N (Nord), S (Sud), W (Ouest), E (Est) |
DICE2. Second dé avec directions |
8 | N (Nord), S (Sud), W (Ouest), E (Est), NW (Nord-ouest), NE (Nord-est), SW (Sud-ouest), SE (Sud-est) |
Avant le début de la partie, la pièce et certains blocs sont placés sur le terrain. Ensuite, le joueur effectue des mouvements de ce type. Au début, le joueur choisit une pièce de monnaie et la lance pour déterminer une action. Ensuite, il choisit l'un des dés et le lance pour déterminer une direction dir. Après cela, l'une des quatre actions suivantes se produit :
| Chaîne de la pièce | Action |
|---|---|
SLIDE |
Déplacer la pièce le long des cellules vides dans la direction dir, jusqu'à ce que la pièce entre en collision avec un bloc ou le bord du labyrinthe |
RAM |
Déplacer la pièce le long des cellules vides dans la direction dir, jusqu'à ce qu'elle entre en collision avec un premier bloc. Ensuite, déplacer la pièce et le bloc dans la même direction, jusqu'à ce que le bloc en mouvement entre en collision avec un autre bloc ou le bord du terrain |
PLACE |
Si la cellule adjacente dans la direction dir à côté de la pièce est vide et se trouve dans le terrain, placer un bloc sur cette cellule |
REMOVE |
Si la cellule adjacente dans la direction dir à côté de la pièce contient un bloc et se trouve dans le terrain, retirer le bloc de cette cellule |
Le but est de placer la pièce sur la cellule d'arrivée.
Une requête pour ce problème correspond à un lancer de pièce et un lancer de dé.
Interaction
Au début, l'interacteur donne la taille du labyrinthe, le labyrinthe et les coordonnées de la cellule d'arrivée. Ensuite, les actions en 4 étapes suivantes se produisent :
- Le programme du jury affiche les coordonnées de la pièce ou informe que la pièce a atteint la cellule d'arrivée.
- Votre programme affiche le nom de la pièce de monnaie.
- Le programme du jury affiche le nom de l'action sur la pièce de monnaie.
- Votre programme affiche le nom du dé.
- Le programme du jury affiche le nom de la direction sur le dé et des informations supplémentaires pour l'action
RAM.
Sortie
La sortie standard doit consister en une paire de lignes : le nom de la pièce de monnaie et le nom du dé. Le nom de la pièce est la chaîne "COIN1" ou "COIN2". Le nom du dé est la chaîne "DICE1" ou "DICE2".
N'oubliez pas de vider la sortie standard après avoir imprimé chaque ligne.
Entrée
La première ligne de l'entrée standard contient un entier $n$ — la taille du labyrinthe. Les $n$ lignes suivantes contiennent $n$ caractères . (ASCII 46) ou # (ASCII 35), désignant respectivement une cellule vide et une cellule avec un bloc.
La ligne suivante contient deux entiers $r_f$ et $c_f$ — le numéro de ligne et le numéro de colonne de la cellule d'arrivée. Le coin supérieur gauche est $(1, 1)$, le coin inférieur droit est $(n, n)$. La cellule d'arrivée et la cellule initiale sont vides.
Les groupes suivants décrivent chaque mouvement :
- La première ligne d'un groupe contient deux entiers $r, c$ — le numéro de ligne et le numéro de colonne de la pièce, ou $(-1, -1)$ si la pièce atteint la cellule d'arrivée.
- La ligne suivante contient le nom de l'action indiquée sur la pièce de monnaie.
- La ligne suivante contient le nom de la direction indiquée sur le dé.
- Si l'action actuelle est
RAM, les deux chaînes suivantes contiennent deux entiers $r_1, c_1$ et $r_2, c_2$, indiquant que la pièce entre en collision avec un bloc aux coordonnées $(r_1, c_1)$ et déplace ce bloc vers la cellule $(r_2, c_2)$.
La direction nord correspond à un numéro de ligne décroissant. Le sud à un numéro de ligne croissant. La direction ouest à un numéro de colonne décroissant. La direction est à un numéro de colonne croissant.
Chaque face de n'importe quelle pièce ou dé est montrée avec la même probabilité.
Exemples
Entrée 1
5 #.... ..... ..... ..... ..#.. 4 3 1 5 PLACE W 1 5 RAM S 6 5 6 5 5 5 RAM W 5 3 5 1 5 2 PLACE NE 5 2 RAM NE 4 3 2 5 3 4 REMOVE NE 3 4 PLACE S 3 4 SLIDE W 3 1 RAM S 5 1 5 1 4 1 SLIDE E -1 -1
Sortie 1
COIN2 DICE1 COIN1 DICE1 COIN1 DICE1 COIN2 DICE2 COIN1 DICE2 COIN2 DICE2 COIN2 DICE1 COIN1 DICE1 COIN1 DICE1 COIN1 DICE1
L'état initial du labyrinthe pour l'exemple
La représentation du chemin est montrée ci-dessous :