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

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


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

Blockout este versiunea in 3 dimensiuni a jocului tetris. Astfel, piese avand forme diferite trebuiesc plasate intr-un paralelipiped de o anumita inaltime.
In aceasta problema, va trebui sa simulati o varianta simplificata a acestui joc.
Consideram un paralelipiped cu baza de dimensiuni NxN si inaltime infinita. In interiorul acestuia, cad succesiv piese ce se vor aseza pe pozitia cea mai joasa posibila. Piesa inainteaza pe axa verticala cate o unitate si se opreste atunci cand, fie a atins baza paralelipipedului (inaltime 0), fie se sprijina pe o piesa precedenta.
Piesele considerate vor avea deasemenea forma paralelipipedica iar pozitia lor in planul orizontal va fi data.

Cerinta

Pentru fiecare piesa se cere sa afisati inaltimea finala la care se va opri baza piesei.

Date de intrare

Prima linie a fisierului blockout.in va contine doua numere intregi N si M separate printr-un singur spatiu. N reprezinta dimensiunea bazei paralelipipedului, iar M numarul de piese. Urmatoarele M linii vor contine cate 5 intregi ce corespund unei piese x1 y1 x2 y2 h; primii doi intregi reprezinta coordonatele coltului stanga-sus al bazei piesei, urmatorii doi coordonatele coltului dreapta-jos al bazei piesei si ultimul reprezinta inaltimea piesei.

Date de iesire

Pentru fiecare piesa se va scrie pe o linie in fisierul blockout.out inaltimea finala a bazei piesei.

Restrictii

  • 1 <= N <= 100
  • 1 <= M <= 15000
  • 0 <= x1, y1, x2, y2 <= N-1
  • 1 <= h <= 100

Exemplu

blockout.in blockout.out
10 3
1 1 2 2 1
4 5 4 5 7
1 1 10 10 10
0
0
7

Batog Bogdan
UPB

propunător: Prof. Emanuela Cerchez
emanuela.cerchez@gmail.com
Probleme recomandate
De la Şansa de a deveni campion 2002: adevar, marcare, joc10, prieteni1, bare, soricel1, traseu, zapezi, banda10, soricel2, masina2, excursie1, asmax, salvare, perechi1, culmi, tramvai1, numar2, sume1, raft, bloc, schi, joc12, sediu, soricel3, ferma, fni, sah1, suma3, granita, nr4, fractie, join, cod3, tunel, lover, trip, pepsi, string, medii, transport, tren3, avion, prime1, poligon1, monkey, premii1, garaj, carti2, gramada, microvirus, tv, gramezi1, puncte2, benzina, aranjari, numere5, fat, izo, cafea, top, echipe1, zoo, secvente
De acelaşi autor: microvirus
Despre matrice: vopsea, harta, opmat, sarpe, light, magic2, tetris, origami, concurs, iepuras, tribile, criptmat, cutie, 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, 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
surse trimise | ajutor