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

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


Timp maxim de execuţie / test:
0.1s
Memorie totala disponibilă / stivă:
2MB / 1MB

Păpuşa Matrioşka este o jucărie din lemn, goală pe dinăuntru. De aceea, în interiorul său poate fi introdusă oricare altă păpuşă Matrioşka de înălţime mai mică.
La un magazin de suveniruri se găsesc n păpuşi Matrioşka aşezate în şir, în număr egal, pe două rafturi alăturate. Pe raftul din stânga sunt expuse prima jumătate de păpuşi, situate în şir pe poziţiile 1, 2,…[n/2], iar raftul din dreapta ultima jumătate de păpuşi, situate în şir pe poziţiile [n/2]+1,…n. Prin notaţia [n/2] se înţelege jumătatea numărului n.
Ana şi Iulia vor să cumpere cât mai multe păpuşi Matrioşka, dar tatăl lor le impune următoarele reguli:
• Iulia are voie să aleagă păpuşi din raftul din stânga, iar Ana din raftul din dreapta
• Dacă de pe un raft se cumpără mai multe păpuşi, atunci ele se vor afla pe poziţii consecutive pe raft;
• Prima păpuşă cumpărată de o fetiţă va avea înălţimea mai mică decât cea de a doua, a doua decât cea de a treia şi aşa mai departe astfel încât fiecare păpuşă să poate fi introdusă în următoarea păpuşă cumpărată;
• Ultimele păpuşi cumpărate trebuie să se situeze doar la capetele rafturilor şi în plus:
- dacă ultima păpuşă cumpărată de Iulia este pe poziţia 1 atunci ultima păpuşă cumpărată de Ana trebuie să fie pe poziţia n;
- dacă ultima păpuşă cumpărată de Iulia este pe poziţia [n/2] atunci ultima păpuşă cumpărată de Ana trebuie să fie pe poziţia [n/2]+1.



Pentru a putea să aleagă cât mai multe păpuşi respectând regulile impuse de tatăl lor, fetiţelor li se permite să execute în acelaşi timp următoarea operaţie, până se revine la aşezarea iniţială a păpuşilor:
• Iulia mută păpuşa de pe poziţia 1 pe poziţia [n/2], deplasând cu o poziţie spre stânga toate celelalte păpuşi din raftul său;
• Ana mută păpuşa de pe poziţia n pe poziţia [n/2]+1, deplasând cu o poziţie spre dreapta toate celelalte păpuşi din raftul său;

Cerinţă

Pentru a le ajuta pe Iulia şi Ana să achiziţioneze împreună un număr maxim de păpuşi, scrieţi un program care citeşte un număr natural n şi înălţimile celor n păpuşi şi determină:
a) numărul M de operaţii efectuate concomitent de fetiţe;
b) numărul maxim P de păpuşi care vor fi cumpărate.

Date de intrare

Fişierul text papusa.in conţine pe prima linie un număr natural par n, reprezentând numărul de păpuşi. Pe linia a doua sunt n numere naturale separate prin câte un spaţiu, reprezentând înălţimile păpuşilor situate pe cele două rafturi, în ordine de la poziţia 1 la n.

Date de ieşire

Fişierul de ieşire papusa.out va conţine pe prima linie, numărul natural M, iar pe a doua linie, numărul natural P.

Restricţii

• 2 ≤ n ≤ 1000, n este număr par
• 1 ≤ înălţimile păpuşilor ≤ 10000
• Dacă numărul maxim de păpuşi se obţine fără a face operaţii de mutare atunci M = 0
• Pentru toate testele de intrare există o singură configuraţie pentru care se poate cumpăra un număr maxim de păpuşi

Exemple

papusa.inpapusa.outExplicaţii
8 5 7 2 4 6 10 14 8 2 7 Raftul Iuliei conţine păpuşile de înălţimi 5, 7, 2, 4, iar al Anei păpuşile de înălţimi 6, 10, 14, 8. Pe această aşezare Iulia şi Ana pot cumpăra păpuşile de înălţime 2 4 6 sau 5 8. Se pot cumpăra cel mult 3 păpuşi.
Configuraţia obţinută după prima operaţie de mutare este: 7 2 4 5 8 6 10 14
Pe această aşezare Iulia şi Ana pot cumpăra păpuşile de înălţime 2 4 5 6 8 sau 2 7 6 10 14. Se pot cumpăra cel mult 5 păpuşi.
Configuraţia obţinută după a doua operaţie 2 4 5 7 14 8 6 10. Pe această aşezare Iulia şi Ana pot cumpăra păpuşile cu înălţimile 2 4 5 7 6 8 14 sau 2 6 10. Deci se pot cumpăra cel mult 7 păpuşi.
Configuraţia obţinută după a treia operaţie 4 5 7 2 10 14 8 6.
Pe această aşezare Iulia şi Ana pot cumpăra păpuşile cu înălţimile 2 10 sau 4 6. Deci se pot cumpăra cel mult 2 păpuşi.
Numărul maxim de păpuşi cumpărate este 7 şi se obţine după a doua operaţie de mutare.

autor: Prof. Suzana Gălăţan
propunător: Prof. Emanuela Cerchez
Colegiul Naţional ″Emil Racoviţă″
emanuela.cerchez@gmail.com
Articole recomandate
Probleme recomandate
De la ONI 2011: sport2, macheta, butoane, acces, mxl, segmente, tsunami, tort1, ec, ape, poligon4, stalpi2, furnici1, telecab, ikebana, posta, fotbal1, xmoto, radare, pamant, fagure, goe, taburet, joc17, mesaj3, zar1, joc16, talent, xy, arbore1, robot3, copii, hacker, terenuri3d, terenuri, expresie2, poteci, joc18
De acelaşi autor: startrek, patrate2, rezervatie, cluburi, smin, flori1
Despre vector: trei, simetric, egal, ruleta, pod, uscat, afise, an, bunici, cursa, onu, tramvai, cadou, kpal, expresie, piticot, roci, petrol, grad, ruleta2, ecran, palma, concurs, holo, ab2, tren2, cifre, mgo, firma, anagrame, joc2, br, maxim, astre, numere2, baby, zapada, hd, startrek, vecini2, drept, teatru, tir, patrate2, nr, cifra, repeat, unu, criptare, ratb, placi, sume3, turist, matrice3, pavaj, sume, kafka, bacan, spair, grup, friends2, bitslang, fisc, scor2, cat, nr3, chimie2, zid, politics, submat, reteta2, rezervatie, creioane, felinare, 2numere, exp, scoici, patrate1, playlist, sqr, carte, oua, turn, ants, div3, jeton, politic, trecere, maraton, zaruri, suma1, mere1, agitatie, lacuri, secv, sotron, triunghi, carti1, spioni, kalah, excursia, matricea, maxq, oras, furnici, baschet, ingerasi, numar1, prieteni, aritma, cezar, bifo, pal, seceta, bare, soricel1, antena, avere, paianjen, bloc, schi, suma3, fractie, tunel, pepsi, prefix, tren3, avion, premii1, csir, top, bsir, secvente, cod4, cuburi3, limbaj, panouri, sant1, zumzi, sport1, baschet1, mere3, powerpuff, placare, sir4, volei1, tabel, ocr, numere7, lacusta, flori, pluton, elfi, mare, grupe1, maroco, cartonas, cabina, case, cod5, furnica, numere8, paritate, comoara1, exponent, control, exp1, joc13, popas, reactivi, siruri1, vanatoare, submult, text1, taxe1, visul, paranteze, puncte3, cub3, numere9, panglica, pietre, poartas, sume2, bal, secvsir, vot, prefix1, accesibil, palc, standard, bursa, meteo, jetoane, printesa, palindrom, joker, matriosca, loto, cuvant, cladiri1, secvente1, zar, tren4, asociativ, lego, medalii, figura, joc14, neuroni, char, dartz, turism1, calorii, xor1, paltrei, album, livada1, colorare, greutati, brazi, submatrix1, plaja, cd1, cifru3, permutare, miere, tetris1, conferinta, atelier, radical, bileprime, nx, atletism, sumb, minmax, sumacifre, jocprim, sircifre, cmmdcsecv, secvb, siruri3, cifru4, vase, carte1, grad1, litere, magic6, macheta, butoane, ec, stalpi2, fagure, goe, taburet, mesaj3, zar1, joc16, talent, joc18, cos, punctfix, risipa, liste, triburi, nr0, oneton, nor, nrpomi, paisprezece, anagramabil, zuma, joc20, dale, perechi2, consiliu, becuri2, codpatrat, adprod, qtri, reconst, arme, triunghi4, deal, ozn1, cifru5, flori1, elicop, roata, trifoi, maxbin, culori2, numar5, bile6, proiecte, alune, cuburi4, sstabil, intersectii, copaci2, 7segmente, amedie, drept2, divider, eliminare, matd3, prodnr, fraze, vectori1, compar, unific, galbeni, clepsidru, calcule, puncte6, maxp, cursa1, secvp, swap, extraprime, onigim, divizori1, remi1, tetris3, amestec, eoliene, split, momente, secvente2, ausoara, aranjare2, vintage, binremove, sminus, subsets, interclasare, palindromuri, colina, doitrei, rebus1, tcif, munte3, triunghi6, schi1, rascoala, solitar, praslea, vot2, tema, sprime, sir2dif, aperm, unudoi, prajituri, tan, concurs4, ech, arc, dominant, ordine, tv1, nebuni, sort2dist, lightbot, iepuras1, castig
surse trimise | ajutor