dame

Time limit: 0.03s Memory limit: 2MB Input: dame.in Output: dame.outPoints by default: 10p

Ana şi Bogdan joacă dame. Tabla de joc este o tablă de şah obişnuită, ca în figura de mai jos:

Observaţi că liniile sunt numerotate de la 11 la 88, iar coloanele sunt etichetate cu literele mici de la aa la hh, astfel că fiecare poziţie de pe tablă este identificată prin litera asociată coloanei pe care se află, urmată de numărul liniei. De exemplu, pătratul din stânga-jos este a1a1 şi este negru; pătratul din dreapta-sus este h8h8 şi este de asemenea negru. La începutul jocului fiecare jucător are 1212 piese (Ana piese albe, Bogdan piese negre). Iniţial piesele albe sunt plasate în poziţiile a1a1, a3a3, b2b2, c1c1, c3c3, d2d2, e1e1, e3e3, f2f2, g1g1, g3g3, h2h2. Piesele negre sunt plasate iniţial în poziţiile a7a7, b6b6, b8b8, c7c7, d6d6, d8d8, e7e7, f6f6, f8f8, g7g7, h6h6, h8h8. Ana şi Bogdan mută alternativ, prima la mutare fiind Ana, deoarece joacă cu piesele albe. Piesele sunt denumite dame.
O damă poate executa două tipuri de mutări:

  1. mutare simplă: piesa este mutată pe tablă diagonal înainte cu o poziţie, dacă poziţia diagonal următoare este liberă. De exemplu o damă albă aflată în poziţia d4d4 poate fi mutată în poziţia c5c5 sau e5e5; o damă neagră aflată în poziţia d4d4 poate fi mutată în poziţia c3c3 sau e3e3.
  2. salt: dama sare în diagonală peste o piesă a adversarului şi ajunge pe tablă în poziţia diagonal următoare (dacă aceasta este liberă). Piesa adversarului peste care s-a sărit va fi eliminată de pe tablă. Dacă după efectuarea unui salt piesa respectivă poate efectua un alt salt, în acelaşi mod, va continua salturile. Salturile sunt permise în oricare dintre cele 44 direcţii. De exemplu, să considerăm că avem o damă în poziţia d4d4, iar în poziţia e5e5 este o piesă a adversarului. După salt dama din d4d4 va ajunge în poziţia f6f6 (aceasta trebuie să fie liberă), iar piesa din e5e5 este eliminată de pe tablă.

În timpul jocului, pisica Anei a răsturnat tabla de joc. Din fericire Ana şi Bogdan îşi amintesc mutările.

Cerinţă

Scrieţi un program care să restaureze configuraţia tablei de joc, pe baza şirului de mutări efectuate.

Date de intrare

Fişierul de intrare dame.in conţine pe prima linie un număr natural NN reprezentând numărul de mutări efectuate de la începutul partidei. Pe următoarele NN linii sunt descrise cele NN mutări, câte o mutare pe o linie. O mutare simplă este descrisă prin specificarea celulei iniţiale şi a celulei finale separate prin caracterul - (minus). Dacă mutarea nu este corectă (nu respectă regulile din enunţ), va fi ignorată. Un salt este descris prin specificarea celulei iniţiale şi a celulelor prin care trece piesa separate prin caracterul :. Dacă pe parcursul unui salt se încalcă regula din enunţ, atunci saltul se execută până la prima eroare întâlnită. Chiar dacă o mutare este ignorată, următoarea mutare este efectuată de celălalt jucător.

Date de ieşire

Fişierul de ieşire dame.out va conţine 88 linii, fiecare linie conţinând exact 88 caractere din mulţimea {.,,a,n}\{`.`, `-`, `a`, `n`\} cu semnificaţia: . pătrat alb gol, - pătrat negru gol, a damă albă, n damă neagră.

Restricţii

  • 1N<751 \leq N < 75
  • Liniile din fişierul de intrare au maxim 5050 de caractere.

Exemplu

dame.in

4
c3-d4
f6-e5
d4:f6
g7:e5

dame.out

.n.n.n.n
n.n.n.-.
.n.n.-.n
-.-.n.-.
.-.-.-.-
a.-.a.a.
.a.a.a.a
a.a.a.a.

Log in or sign up to be able to send submissions!