Sunteți pe pagina 1din 1

Ministerul Educaiei Naionale

Olimpiada de Informatic Gimnaziu - Etapa Naional


Oradea, 6 - 10 aprilie 2013

Sursa : tetris.c/ tetris.cpp / tetris.pas Clasa a VI-a

Problema 3 tetris 100 puncte


Gigel are instalat pe calculator un joc numit Tetris, n care pe o zon dreptunghiular cade pe rnd cte o
pies dintr-un ir de piese. Zona de joc este codificat sub forma unei table cu N linii i M coloane. Liniile le
considerm numerotate de la 1 la N de jos n sus, iar coloanele de la 1 la M i de la stnga la dreapta. Toate
piesele sunt de forma unor ptrate. Ele intr n zona de joc ncepnd cu linia N i cad ctre linia 1, deplasarea
fcndu-se pe vertical n cadrul acelorai coloane. Dac n cdere ntlnete o pies introdus anterior n joc
atunci ea se va opri exact deasupra ei, deci ncepnd cu linia imediat urmtoare.
O piesa intr n joc doar dac poate fi
introdus complet pe zona delimitat de cele
N linii i M coloane.
n desenul alturat zona de joc are 7 linii i
8 coloane i n joc au intrat pe rnd zece
piese, numerotate de la 1 la 10, n ordinea
introducerii lor pe tabl.
Un joc Tetris se termin cnd toate piesele
din ir s-au aezat pe tabl sau cnd piesa care L1, L2,..,L7 reprezint notaiile pentru cele 7 linii
urmeaz nu poate fi introdus n joc. C1, C2,...,C8 reprezint notaiile pentru cele 8 coloane
Cerine
Realizai un program care identific:
a) Numrul maxim de ordine al unei linii ocupat de o pies;
b) Determinai numrul maxim de coloane alturate ocupate de piese, n cadrul liniei determinate la
punctul a).
Date de intrare
Fiierul tetris.in conine pe prima linie dou numere naturale N i M reprezentnd numrul de linii,
respectiv numrul de coloane ale zonei de joc. Urmtoarele linii conin perechi de numere naturale, fiecare
descriind cte o pies n ordinea intrrii ei n joc. Primul numr din pereche reprezint lungimea laturii piesei,
iar cel de al doilea reprezint numrul de ordine al coloanei pe care se ncearc plasarea laturii stngi a piesei.
Numerele de pe fiecare linie sunt separate printr-un singur spaiu.
Date de ieire
n fiierul tetris.out se va scrie pe prima linie numrul maxim al liniei ocupate de o pies, iar pe a doua
linie numrul maxim de coloane alturate ocupate de piese, din cadrul acestei linii.
Restricii i precizri
1 toate numerele din fiierul de intrare 1000
Se asigur c pentru toate testele cel puin prima pies poate fi aezat pe tabl
Se asigur c numrul de ordine al coloanei pe care se ncearc plasarea laturii stngi a piesei este M
Se acord 60% din punctajul unui test, dac pe prima linie a fiierului de ie ire se afl un singur numr
i el reprezint rspunsul corect la prima cerin . Dac fiierul de ieire conine dou linii i pe a doua
linie se afl un singur numr ce reprezint rspunsul corect la a doua cerin se obine 40% din
punctajul testului.
Exemplu
tetris.in tetris.out Explicaia
7 8 7 Exemplu din desen descrie ordinea n care au intrat piesele n joc. Linia
1 1 4
2 2
7 este linia cu numr de ordine maxim ce este acoperit cu piese.
2 7 Piesele 8 i 10 acoper aceast linie, pe o secven de 4 coloane
1 6 alturate, iar piesa 9 acoper doar o coloan, deci secven a maxim este
3 6 de lungime 4.
3 3
1 8
Piesa 11 nu a mai putut fi introdus n joc.
2 5
1 8
2 3
3 3
Timp maxim de executare/test: 2 secunde
Memorie total disponibil: 4 MB, din care 2 MB pentru stiv.

Problema 3 tetris Pagina 1 din 1