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

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


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

Prinţul Algorel este în încurcătură din nou: a fost prins de Spânul cel Negru în încercarea sa de a o salva pe prinţesă şi acum este închis în Turnul cel Mare. Algorel poate evada dacă găseşte combinaţia magică cu care poate deschide poarta turnului. Prinţul ştie cum se formează această combinaţie magică: trebuie să utilizeze toate cifrele scrise pe uşa turnului pentru a obţine două numere palindroame, astfel încât suma lor să fie minimă, iar această sumă este combinaţia magică ce va deschide uşa. Primul număr palindrom trebuie să aibă cel puţin L cifre, iar cel de-al doilea poate avea orice lungime diferită de 0. Numerele palindroame formate nu pot începe cu cifra 0. Acum interveniţi dumneavoastră în poveste, fiind prietenul său cel mai priceput în algoritmi. Prin noul super-telefon al său, prinţul transmite numărul de apariţii a fiecărei cifre de pe uşa turnului precum şi lungimea minimă L a primului număr, iar dumneavoastră trebuie să-i trimiteţi cât mai repede numerele cu care poate obţine combinaţia magică.

Cerinţă

Având datele necesare, aflaţi două numere palindroame cu care se poate obţine combinaţia magică.

Date de intrare

Prima linie a fişierului de intrare pal.in conţine un număr întreg L reprezentând lungimea minimă a primului număr. Urmează 10 linii: pe linia i+2 se va afla un număr întreg reprezentând numărul de apariţii ale cifrei i, pentru i cu valori de la 0 la 9.

Date de ieşire

Prima linie a fişierului de ieşire pal.out conţine primul număr palidrom, iar cea de-a doua linie conţine cel de-al doilea număr palindrom. Dacă există mai multe soluţii se va scrie doar una dintre ele.

Restricţii

În total vor fi cel mult 100 de cifre
1 ≤ L < 100 şi L va fi mai mic decât numărul total de cifre
Pentru datele de test va exista întotdeauna soluţie: se vor putea forma din cifrele scrise pe uşa turnului două numere care încep cu o cifră diferită de 0, iar primul număr să aibă cel puţin L cifre
Un număr este palindrom dacă el coincide cu răsturnatul său. De exemplu 12321 şi 7007 sunt numere palindroame, în timp ce 109 şi 35672 nu sunt.
Pentru 30% dintre teste, numărul total de cifre va fi cel mult 7; pentru alte 40% din teste numărul total de cifre va fi cel mult 18, iar pentru restul de 30% din teste numărul total de cifre va fi mai mare sau egal cu 30
Fiecare linie din fişierul de intrare şi din fişierul de ieşire se termină cu marcaj de sfârşit de linie.

Exemple

pal.inpal.outExplicaţii
5 3 2 3 0 0 0 0 0 0 0 10223 Pentru acest exemplu avem L = 5, 3 cifre de 0, 2 cifre de 1 şi 3 cifre de 2. Cifrele de la 3 la 9 lipsesc de pe uşa turnului.

Cele două palindroame cu care se generează combinaţia magică sunt 10001 şi 222. Combinaţia magică va fi suma acestora şi anume 10223 (care este suma minimă pe care o putem obţine).

autor: Silviu Gănceanu
propunător: Prof. Marinel Şerban
Liceul de Informatică “Grigore Moisil”
marinel_serban@yahoo.com
Articole recomandate
Probleme recomandate
De la ONI 2005: baschet, ingerasi, numar1, prieteni, robinson, aritma, cezar, cuburi2, joc8, bifo, joc9, romeo, seceta, antena, avere, joc11, paianjen, suma2, vizibil, masina3, csir, lsort, patrat, ziduri, anticip, bsir, evantai, galax, spion, texan
De acelaşi autor: descfib, otilia, tvshow, algola, bifo, evantai, treegame
Despre şiruri de caractere: scp, ab, sl, nrcuv, rv, kpal, chimie, reteta, replace, grad, index, cod, text, decript, spam, complex, cifre, anagrame, balbe, criptmat, mesaj, maxim, astre, sablon, formule, ed, balls, vocale, prop, bacan, novel, bitslang, text2, ref, scor2, convert, cod2, compress, pstring, sub, rima, program1, sms, circular, randuri, cezar, bifo, joc9, bare, joc12, fractie, cod3, tunel, csir, top, ratina, cifru1, limbaj, adun, ecuatii, dir, paritate, virus, sir6, mesaj2, text1, sirul, ogorul, rez, sablon1, anag, sir8, seti, secvsir, dp, cuvant, strings, antipatie, fractie1, links, ordonare, text3, concat, codif, cheie, alfabetar, cuvinte2, comp, litere, mxl, mesaj3, expresie2, grad2, antic, zuma, expeval, combcuv, lgdrum, subtitrare, compresie, zigzag, azeval, fraze, subsecvente, showroom, rebus1, agenda, opmult, betisoare, reziston, clase, vot2, ecp, smiley, charlie, cript, scadere, spioni1, sablon3, expand, culori3, virgule
Despre Greedy: lac, sumdif, checkin, baby, startrek, placi, gramezi, mese, jobs, politics, joc3, playlist, carte, exam, subperm, piloti, barca1, pitici, bombe, pic, bac, antena, culmi, numar2, lover, sant1, volei1, ab3, camion1, aranjare, popas, reactivi, mesaj2, dp, jocv, segm, calorii, album, kdtree, sport2, telecab, dag, cifre4, micro, triburi, testament, nor, eoliene, vintage, cifre5, agenda, monede2, charlie, scadere, barci
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, 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, papusa, 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
Despre cifre: cifre1, div3, aparitii, numar1, prieteni, robinson, aritma, cezar, suma2, cod4, powerpuff, ucif, sir4, numere6, pluton, mare, cifre2, ceas2, cod5, paritate, test1, comoara1, cifre3, concurs3, control, submult, visul, codul, numere9, sume2, smith, secvsir, prefix1, fazanr, prodmax, palindrom, control1, paltrei, alo, cifra1, case1, pin, sumacifre, triplu, goe, talent, copii, cifre4, nr0, anagramabil, codcorect, test2, bancomat, sume4, alice, culegere, numar5, cuburi4, cifreco, 7segmente, unupatru, xyz, unific, galbeni, cladiri2, extraprime, momente, palindromuri, conturi, numere12, imprimanta, martisoare, cifre5, pagini, tan, centrale, ech, speciale, cuart, inventie, robot5
Chestionare recomandate
surse trimise | ajutor