.campion
conectare | înregistrare | căutare
Pagina principală » Probleme » cutie

ultima problemă
grupă: mică
sursă: OMI 2016
ultimul articol
autor: Prof. Radu Vişinescu
ultimul software
autor: Prof. Emanuela Cerchez
.campion
cutie


Timp maxim de executie/test:
0.5 secunde
Memorie totala disponibila/stiva:
16 MB/1 MB

Multi copii sunt familiarizati cu un joc in care o biluta este plasata intr-o cutie patrata in care sunt diferite obstacole, astfel incat interiorul cutiei are aspectul unui labirint. Tinand cutia vertical, bila poate cadea (sub influenta gravitatiei) pana la marginea cutiei sau pana la intalnirea unui obstacol.
Cutia poate fi rotita cu 90 de grade (in sensul acelor de ceas sau invers). Ca urmare, sub influenta gravitatiei, din nou bila se va deplasa pana la intalnirea unui obstacol sau a marginilor cutiei.

Cutia jocului poate fi reprezentata ca o matrice cu N linii si N coloane. Daca elementul de pe linia i si coloana j este un obstacol el va fi marcat in matrice cu litera X, iar daca este culoar, va fi marcat in matrice cu . (punct). Pozitia bilei va fi marcata in matrice cu litera B.

Cerinta
Scrieti un program care sa determine configuratia cutiei dupa o secventa de rotatii specificata.

Date de intrare
Fisierul de intrare cutie.in contine pe prima linie doua numere naturale separate prin spatiu N K, unde N reprezinta dimensiunea cutiei, iar K reprezinta numarul de rotatii. Pe urmatoarele N linii sunt scrise cate N caractere, reprezentand configuratia initiala a cutiei. Pe urmatoarele K linii sunt scrise rotatiile, cate o rotatie pe o linie. O rotatie este descrisa prin litera S daca rotatia se face cu 90 de grade in sensul invers acelor de ceas, sau prin litera D daca rotatia se realizeaza cu 90 de grade in sensul acelor de ceas.

Date de iesire
Fisierul de iesire cutie.out va contine N linii, fiecare linie continand exact N caractere, reprezentand configuratia cutiei dupa executarea celor K rotatii.

Restrictii
1 <= N <= 1000
1 <= K <= 500 000

Exemplu

cutie.in cutie.out cutie.in cutie.out

6 2
....XX
X.....
......
..B...
.XXX..
......
S
D

....XX
X.....
......
......
.XXX..
B.....
10 7
..........
XXXXXXXXX.
..X.....X.
..X.....X.
........X.
........X.
...X....X.
...X....X.
.XXXXXXXX.
B.........
S
S
S
S
D
D
S
........X.
.X......X.
.X....XXX.
.XXX....X.
.X......X.
.X......X.
.X......X.
.X...B..X.
.XXXXXXXX.
..........

prof. Emanuela Cerchez
Liceul de Informatica "Grigore Moisil" Iasi
Contact:emanuela.cerchez@gmail.com

propunător: Prof. Emanuela Cerchez
emanuela.cerchez@gmail.com
Articole recomandate
Probleme recomandate
De la .campion 2007: perechi, teanc, index, light, copaci, teren, pizza, grupe, cod, ecran, drum, soldati, factura, palma, decript, lbd, aven, cs, h, trenuri, sort, spam, complex, parent, holo, tren2, gray, siruri, arce, pasi, cifre, mgo, firma, joc, cartonase, vikingi, anagrame, balbe, vecini, balaur, tribile, conflicte, criptmat, mesaj, maxim, magic3, desen, plimbare, patrate, party, vagoane, robot, astre, trains, numere2, friends, tricouri, furtuna, net, baby, scaune, 3d, axa, bile2, vmem, pahare, termen, sablon, zapada, cuvinte, excursie, hd, pajura, pc, sir, cadere, pioni
De acelaşi autor: celule, scp, vedete, film, ab, supertri, inginer, camp, sl, detinut, simetric, egal, gropi, ruleta, carti, tgv, uscat, afise, dezbateri, bunici, rv, onu, nspecial, secvop, cadou, chimie, reteta, piticot, petrol, checkin, teanc, index, teren, pizza, ecran, drum, text, lbd, aven, spam, pluricex, tren2, gray, pasi, mgo, joc, anagrame, vecini, criptmat, maxim, party, friends, net, sablon, hd, pc, sir2, aztec, scara, nr, robot2, sah, formule, ed, bilete, hanoig, flood, matrice3, erdos, grup, cd, kfactor, np, cuc, radio, honest, ref, nr01, scor2, convert, auto2, compress, politics, pm, playlist, barbie, firma1, submatrix, ham, pizza1, exam, ants, teatru1, cifre1, bile1, caini, secvreg, pasune, remi, m01, sir23, tren1, joc5, pachete, aedaro, windows, renju, latime, mere1, piloti, peste, pitici, sirag1, stive, turn1, carti1, program1, spioni, kgb, lift, apel, lex, oras, homeless, subsir, dist, harta1, adevar, joc10, bare, zapezi, masina2, perechi1, raft, joc11, joc12, ferma, fni, tunel, lover, pepsi, transport, avion, monkey, premii1, garaj, carti2, tv, pact, fat, cafea, echipe1, secvente, petrom, peg, scara1, lant, ecuatii, stiva, bile4, jungla, rj, poli, text1, compus1, rez, politie, anag, codul, coment, muzeu, seti, basm, timer, secvsir, dp, placa, prod3, bursa, submdisj, sotron1, fazan, secvpar, joker, lego, medalii, cfr, antipatie, figura, links, segm, colorare, brazi, mobil, distsir, guess, greiere, pestera, conferinta, chei, ny, nx, ghinion, sumb, drenaj, telecomanda, grupuri, mahjong, rotund, viena, sport2, cos, monoton, micro, valet, nr0, maxviz, anagramabil, nrpal, lista, dame, consiliu, adprod, arme, deal, prodnr, compar, latin, interviu, vintage, prize, nrdiv, arrows, tdrept, agenda, reziston, vot2, tema, smiley, relatii, ech, scadere, nebuni, castig, expand, wb, prime2, virgule, b210
Despre matrice: vopsea, harta, opmat, sarpe, light, magic2, tetris, origami, concurs, iepuras, tribile, criptmat, patrate, 3d, pajura, perspic, vecini2, livada, matrice3, kafka, erdos, grup, scor2, reteta2, rezervatie, scoici, tablou, game, stea, submatrix, cifru, jokes, oua, trecere, na, dotnet, renju, ghici, mere1, agitatie, lacuri, sotron, desen1, camion, ceas1, fibo, parc, excursia, matricea, zidar, joc6, log, concurs2, cladiri, dist, centru, robinson, cuburi2, joc8, joc9, romeo, adevar, soricel2, avere, joc11, vizibil, sah1, blockout, masina3, lsort, anticip, matrice1, evantai, spion, pereti, zumzi, roboti, placare, tabel, ocr, numere7, lacusta, becuri, sir5, flori, cartele, furnica, pavare, poarta, rj, peri, poligon2, sablon1, gradina, matrice4, poartas, balcon, submdisj, v, matrx, figura, neuroni, raze, roboti1, bila, iepurasi, colorare, mat, submatrix1, simetric1, plaja, xor2, guess, albine1, joct, alfabetar, stele, tablou1, alpinist, cladire, cri, grupe2, el, mahjong, sir9, acces, tort1, joc17, mesaj3, zar1, xy, poteci, avioane, broscute, safeu, acoperire1, radioactiv, robot4, lcdr, jb, slide, maxtri, dame, triunghi4, elicop, compresie, mijloc, cubulete, romb, medalion, bile6, zigzag, puncte5, intersectii, matd3, matrixdel, speed, seif1, traseu2, incadrare, betasah, zona, latin, zmax, amestec, sudoku1, gradina1, spider, zone, bemo, rombul, interclasare, rebus1, tabla, arrows, pseudobil, patrat1, rascoala, harta2, relatii, lasere, defrag, matcnt, ssdj, cript, ssk, teren1, fence, cifre6
Software recomandat
surse trimise | ajutor