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

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


Timp maxim de execuţie/test:
0.7 secunde
Memorie totala disponibilă/stivă:
16 MB/1 MB

Ultima inovatie in materie de microprocesoare este forma acestora: se produc microprocesoare în formă de triunghi dreptunghic isoscel. Microprocesoarele nu se fabrică individual. Există nişte plăci (denumite wafers) de formă dreptunghiulară de NxM cm. Pe aceste plăci este trasat un caroiaj (format din linii respectiv paralele cu laturile plăcii), caroiaj care împarte placa în NxM pătrate cu latura de 1 mm.
Un microprocesor poate fi plasat pe placă astfel încât cel puţin una dintre laturile sale să fie paralelă cu una dintre laturile plăcii, iar vârfurile triunghiului care reprezintă microprocesorul să fie plasat în punctele de intersecţie ale liniilor caroiajului. Evident, oricare două microprocesoare nu au voie să se suprapună.
În figurile 1, 2, 3 sunt reprezentate 3 variante greşite de a plasa microprocesoarele pe placă, iar în figurile 4 şi 5 sunt ilustrate două variante corecte:


Conducerea companiei a sesizat că există pierderi mari datorită faptului că spaţiul de pe placă nu este utilizat integral.

Cerinţă

Dată fiind configuraţia actuală a plăcii, să se determine numărul minim de microprocesoare ce trebuie să fie adăugate (în mod corect) pe placă astfel încât spaţiul de pe placă să fie complet utilizat.

Date de intrare

Fişierul de intrare placa.in conţine pe prima linie trei numere naturale N M K, reprezentând dimensiunile plăcii şi respectiv numărul de microprocesoare deja plasate pe placă. Pe următoarele K linii sunt descrise poziţiile microprocesoarelor existente pe placă. Pentru fiecare microprocesor sunt specificate pe o linie 6 numere întregi separate prin spaţii x1 y1 x2 y2 x3 y3, reprezentând în ordine abscisa şi ordonata punctelor în care se află fiecare dintre cele 3 vârfuri ale microprocesorului. Sistemul de coordonate utilizat are axele respectiv paralele cu laturile plăcii, colţul stânga jos fiind punctul de coordonate (0, 0), iar colţul dreapta-sus fiind punctul de coordonate (N, M).

Date de ieşire

Fişierul de ieşire placa.out va conţine pe prima linie un număr natural MIN reprezentând numărul minim de procesoare ce trebuie să fie adăugate pe placă astfel încât placa să fie complet utilizată. Pe următoarele MIN linii sunt descrise poziţiile celor MIN microprocesoare adăugate. Fiecare linie va conţine câte 6 numere întregi separate prin spaţii reprezentând în ordine abscisa şi ordonata punctelor în care se află fiecare dintre cele 3 vârfuri ale microprocesorului x1 y1 x2 y2 x3 y3.

Restricţii

  • 0 < N, M < 5

Exemple

placa.in placa.out
3 3 1
0 1 1 2 2 1
5
0 1 1 2 0 3
0 3 3 3 3 0
1 0 2 1 3 0
0 1 2 1 1 0
0 0 1 0 0 1

prof. Emanuela Cerchez
Liceul de Informatică „Grigore Moisil” Iaşi
emanuela.cerchez@gmail.com
propunător: Prof. Emanuela Cerchez
emanuela.cerchez@gmail.com
Articole recomandate
Probleme recomandate
De la .campion 2009: efort, muzeu, bal, seti, basm, dansatori, smith, timer, secvsir, vot, cetati, reziduu, biliard, prefix1, accesibil, dp, jocv, palc, prod3, predecesor, standard, cantor, nkbiti, nori, triti, kperms, sotron1, impozit, tablite, fazan, lanturi, secvpar, tom, joker, matriosca, asociativ, lego, medalii, permutari, cfr, treegame, scanduri, site, fotbal, links, kbiti, segm, album, iepurasi, jucarii, m4, bradut, trmv, colorare, greutati, concat, graphgame, ic, echilibru, brazi, mat, cubinvers, mobil, distsir, parbit
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, cutie, 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, 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 geometrie: forum, supertri, ozn, detinut, atac, afise, mere, ff, teren, volei, aven, patrate, robot, pahare, pendul, robot2, dragon, poligon, druid, laser, patrate3, ploaia, donald, lot, atac1, arcas, paralel, dotnet, aedaro, vectori, spirala, distanta, triunghi, center, harta1, seceta, antena, poligon1, benzina, zoo, texan, oypara, dreptc, mosia, sea, poligon3, poligon2, snipers, basm, cetati, nori, cerc, smin, cern, cuiburi, acerc, select, proiect, poligon4, terenuri, monoton, acoperire, capra, testament, jb, sdmin, ozn1, parc1, gsm, triunghi5, puncte6, romb1, dreapta, grindina, tdrept
Despre backtracking: acop, bipal, magic2, vagoane, friends, tricouri, festival, numar, pento, ro, jobs, onu2, sir3, cai1, labirint, dans, ham, sudoku, caramele, linie, puncte, castel, excursia, joc7, pattern, avere, paianjen, medii, monkey, scara1, numere8, banda1, spirala1, cofetar, gradina, smin, jucarii, immortal, concat, cubinvers, codif, izvor, avioane, jb, prisme, triburi1, genab, dineu, antitero, ornament, virgule
Software recomandat
surse trimise | ajutor